ลักษณะภูมิประเทศโดยทั่วไปเป็นที่ราบสูง สูงกว่า ระดับน้ำทะเลประมาณ 172 เมตร ตอนเหนือของจังหวัด ได้ แก่ อำเภอวานรนิวาสอำเภอคำตากล้า อำเภออากาศอำนวย และบางส่วนของอำเภอสว่างดินแดน พื้นที่เป็น ที่ราบลุ่มตามน้ำลำห้วยใช้ในการทำนา สลับกับสภาพพื้นที่เป็นลูกคลื่น พื้นที่ลอน ลาด มีสภาพป่าปนไร่ ป่าส่วนใหญ่เป็นป่า แดงโปร่ง มีไม้เต็ง ไม้รัง ทางเหนือที่ตั้ง อำเภออากาศอำนวยและบางส่วนริมแม่น้ำสงครามเป็น ที่ราบรุ่มน้ำทวม จึงใช้ทำนาได้บาง ส่วนเท่านั้น ส่วนใหญ่จะทิ้งไว้รกร้างว่าง เปล่า มีพวกไม้พุ่มเตี้ยและหญ้าขึ้นปกคลุม ทั่วไป ตอนใต้ของจังหวัดเป็นที่ราบสูง ได้ แก่ ที่ราบสูงเทือกเขาภูพาน เป็นที่ราบรุ่ม ระหว่างหุบเขา มีพื้นที่แบบลูกคลื่นลอนลาด อยู่บริเวณอำเภอกุดบาก เขตจังหวัดสกลนคร ใต้สันเขา ของเทือกเขาภูพานเป็นเขตติดกับตัวจังหวัด เป็น หนองน้ำขนาดใหญ่ชื่อหนองหารมีนำตลอดปี เป็นหนองน้ำจืดที่ใหญ่เป็นอันดับ 3 ของประเทศ ไทย มีอาณาเขตกว้างขวางประมาณ 12 กิโลเมตร ยาว 20 กิโลเมตร ระดับนำลึกประมาณ 3-6 เมตร หนนอง หารเป็นที่รอบรับลำห้วยต่างๆ หลายสาย สำหรับ ด้านตะวันออกของจังหวัด ซึ่งมีอาณาเขตติดกับ จังหวัดนครพนม มีสภาพพื้นที่เป็นแบบพื้นลูกคลื่น ลอนลาด รวมถึงบริเวณที่ติดกับอำเภอนาแก จังหวัดนครพนม และส่วนหนึ่งติดกับจังหวัดอุดรธานี เป็นพื้น ที่ราบเรียบสลับกับพื้นที่แบบลูกคลื่นลอน ลาดเช่นกัน เป็นพื้นที่ใช้ทำไร่