북한의 지세는 북으로부터 남쪽으로 뻗어내린 낭림산맥이 척량산맥으로서 골격을 이루고 있으며, 이로부터 서해 방향으로 강남산맥, 적유령산맥, 묘향산맥, 언진산맥, 멸악산맥 등이 펼쳐지고 있다.

한편, 함경북도에서 함경남도에 걸쳐 함경산맥과 부전령산맥 등이 발달하여 낭림산맥과 이어지고 북쪽에는 동서로 백두산맥(장백산맥)이 발달하여 있다.

이들 산맥으로부터 시발된 여러개의 큰 강들은 황해 및 동해로 흐르고 있으며 이들 강 유역에는 평야가 발달하여 있다.

평안북도의 묘향산 지역과 함경남도 함흥을 연결하는 선의 이북지방은 고산지대를 이루고 있으며 함경남도 백두산(2,750m), 관모봉(2,541m), 북수백산(2,522m), 차일봉, 두운봉, 백산, 운령, 남포대산, 대연지산, 낭림산 등 고산이 많고 특히 2,000m가 넘는 산이 60여개에 이른다.

따라서 산들이 대체로 급하고 동북지대에는 개마고원, 백두용암지대, 백두고원 등이, 그리고 남동지대에는 평강고원, 철원고원, 영서고원 등을 형성하고 산간지대에는 회령분지, 무산분지, 갑산분지, 강계분지, 회천분지, 용소분지, 덕천분지 등이 발달하여 있다.

북한에 있는 하천들은 산악과 고원의 경사가 심한 지형을 따라 흐르고 있기 때문에 유속이 빠르고 수량도 비교적 많아서 동력자원으로서의 이용가치가 크다.

북한에서 가장 길이가 긴 압록강을 비롯하여 대동강, 청천강, 예성강 등이 서해로 흐르고, 북한 제2의 강인 두만강을 비롯하여 남대천, 어랑천, 성천강 등이 동해로 흐르고 있다.

북한의 평야는 대부분이 충적평야와 준평원으로서 서해안지대에 발달하여 있으며 그 면적은 1,000㎢이다.

가장 넓은 평야는 평양을 중심으로 하는 중부 및 서남부의 대동강 유역에 발달한 평양평야와 황해남도의 재령, 신천, 안악, 온천 등 재령강 유역에 발달한 재령평야로서 그 면적은 각각 500㎢ 정도에 이른다.

황해남도 연안, 백천, 청단 지역의 연백평야가 약 400㎢ 정도에 이르며 평안남도의 안주, 문덕, 숙주, 평원 등 청천강 유역의 소위 열두삼천리벌이라 불리는 안주평야와 함경남도 함주, 증평 등 성천강 유역의 함흥평야 등이 약 300㎢ 정도에 이르고 평안북도 압록강 유역의 용천평야, 평안북도 예성강 유역의 운전평야, 함경북도 수성천 유역의 수성평야, 함경북도 남대천 유역의 길주평야, 함경남도 룡천강 유역의 영흥평야 등이 각각 200㎢에 이른다.

그 밖에 평안남도 강서평야, 온천평야, 평안북도 박천평야, 함경북도 어량평야 등이 발달 되어 있다.

또한 북한에는 크고 작은 자연호수와 인공호수가 많이 있다.
자연호수로는 면적이 9㎢에 이르는 함경남도 정평의 광포를 비롯하여 양강도의 천지, 함경북도 장연호 및 만포호, 강원도의 동정호 등 1㎢ 이상의 호수가 15개 정도에 이른다.

한편 인공호수로는 가장 큰 수풍호를 비롯하여 장진호, 향로강 저수지, 부전호, 서흥 저수지 등 1㎢ 이상의 호수가 22개나 조성되어 있다.

북한은 전체면적의 약 80%가 산지이고 20% 정도가 평지를 이루고 있는데 일반적으로 산이 급하고 강의 흐름이 빠르며 주요 강들의 강우량에 따른 계절적인 수량 변화가 큰 결점이 있기는 하지만 수량이 비교적 풍부하며 많은 호수와 더불어 동력자원, 농업용수, 양어, 수상운수 및 관광 휴식처 등으로 이용되고 있다.