광복 이후 1946년 북한 지역의 전체 인구는 약 926만 명 정도였다. 그러나 6·25 전쟁을 겪으면서 급감하여 1953년에는 약 849만 명으로 역대 가장 낮은 수치를 기록하였다. 이후 점진적으로 인구가 증가하면서 1958년에 처음으로 전체 인구가 1,000만 명을 넘었고, 1980년대 후반에 2,000만 명을 넘어섰다. 그러나 북한 중앙통계국의 공표 인구 자료에 따르면, 경제난 등의 영향으로 북한 지역의 인구는 1992년에 처음으로 순감소를 기록하였다. 이후 1993년부터 매년 꾸준히 약 1% 내외의 인구 성장률 을 기록하여 2004년에 전체 인구가 2,400만 명을 넘어섰다.
북한 지역의 인구는 주로 고도가 낮고 평야 지대인 남서 지역에 집중적으로 거주하고 있다. 평양직할시를 중심으로 평안남도 지역의 인구 밀도가 가장 높은 편이다. 반면에 산악 지대가 많은 북동 지역(자강도, 양강도, 함경북 도, 함경남도, 강원도)은 혜산시, 청진시, 함흥시, 강계시 등 일부 도시와 동해 연안 지대를 제외하고는 전반적으로 낮은 인구 밀도를 보이고 있다.
유엔 인구 센서스에 따르면, 2008년 북한 지역의 5세 이상 이주 인구는 총 234,817명으로 전체 인구의 1%에 약간 미치지 못하는데, 이는 북한의 지역 간 인구 이동이 활발한 편은 아니라는 것을 말해 준다. 도별로 이동자 수를 살펴보면, 평양직할시와 평안남도의 이주 인구가 가장 많다. 특히 평양직할시의 경우 북한 지역 전체 전입 인구의 28.3%를 차지하고 있어(전출 인구는 10.2%), 전체 북한 지역에서 가장 높은 비율과 많은 수의 전입 인구를 기록하고 있다. 이외에 다른 북한 지역 중에서 평안남도와 함경북도만이 전입 인구가 전출 인구보다 많고, 나머지 지역 모두 높은 인구 유출 경향을 보이고 있다. 특히 함경남도는 전출 인구가 전입 인구의 약 2배에 가까울 정도로, 인구 유출이 가장 심각한 지역이다. 평양직할시의 경우 전체 전입 인구의 30.2%가 평안남도 출신이며, 뒤를 이어 황해북도가 13.6%, 평안북도가 13%를 차지하고 있다. 평양으로부터 거리가 멀어질수록 대체로 전입 인구가 줄어드는 경향을 보이고 있다. 반면 평양의 전출 인구의 경우, 평안남도가 40.2%를 차지할 정도로 압도적인 비율을 보이고 있다. 그 외 다른 지역들로의 전출은 전반적으로 고른 양상을 나타내고 있다. 평양의 전입 및 전출 인구의 구성에서 또 다른 독특한 양상은 타 지역보다 양강도와 자강도로의 인구 이동이 매우 낮다는 것이다. 평양에서 양강도와 자강도로의 전출 인구 비율은 0.01%와 0.03%이며, 양강도와 자강도에서 평양으로의 전입 인구는 0.03%와 0.04%에 그치고 있다. 이는 양강도와 자강도의 인구가 적다는 사실과도 연관 지어 볼 수 있으나, 비슷한 인구 규모를 가진 강원도의 경우 평양으로의 전출 인구는 8.5%, 전입 인구는 14.3%인 것을 고려하면, 북한 지역의 대표적 낙후 지역인 양강도와 자강도의 사회 경제적 조건과도 연관되어 있다고 볼 수 있다.