조선시대 함흥부의 읍성으로서, 북한에서는 국가지정문화재 보존급 제368호로 지정해 놓고 있다.
고려 시대 북관을 개척하고 설치한 9개 성의 하나로서 1108년에 축성하였다. 당시에는 함주성이라고 불렀으며 함주대도독부를 두었다. 이후 조선시대 중엽에 와서 퇴락되어 1746년에 다시 쌓았다. 본래 둘레 4.6㎞, 높이 7m의 흙과 돌로 쌓은 성이었으나 일제가 강점한 후 성벽을 파괴해 버려 현재는 일부 남아있는 부분만 보존되고 있다.
관북지방 방위의 요충인 함흥성은 동흥산을 배경으로 산과 벌에 걸쳐 쌓은 평산성으로 남북으로 긴 장방형이며 성벽은 산지대에서는 외겹으로, 평지대에서는 겹으로 쌓았다. 성문은 지형 조건과 교통 조건을 고려하여 사방의 적당한 위치에 배치하였다. 동문은 패동문, 서문은 풍서문, 남문은 진남문, 북문은 진북문이라 했으며 문마다 다락이 있었다. 성 안에는 병영, 무기고, 식량 창고가 있었다. 성 안팎이 한눈에 들어오는 가장 높은 곳에 북장대가 있었고 북장대에는 북상루가 세워졌다. 현재 북상루터에는 18세기 초엽에 옮겨 세운 구천각이 있다.
고려시대에는 여진족의 침략을 물리치는 싸움에서, 조선시대에는 왜적을 막는 싸움에서 중요한 요새가 되었다.