금나라는 1115년, 현대 지린성과 헤이룽장성에 걸쳐 살던 여진 부족 완안부의 족장 아골타에 의하여 세워졌다. 구전에 의하면 아골타는 완안 함보의 후손이었다고 전해진다.
원래 여진족들은 이 당시까지만 해도 거란족이 세운 요나라의 지배를 받았는데, 이 시기에 한족들은 거란족들에게 강간을 당하거나 잡혀가 무고하게 죽임을 당하는 일도 비일비재하였다. 여진족이 반란을 일으키자, 요나라와 적대 관계였던 송나라는 이를 크게 반겼다.
1121년, 송나라는 금나라와 해상의 맹약을 맺어 함께 요나라를 무너뜨리기로 합의하였고, 곧바로 합동공격에 나섰다. 하지만 이후 벌어진 전쟁에서 송나라 군대가 요나라에 맞서 고전하는 와중에, 금나라 군대는 요나라에 연전연승을 거두었다.
결국 금나라 군대는 요나라 조정을 중앙아시아로 쫓아내는 데에 성공하였고, 요나라의 영토 거의 대부분을 흡수하였다. 금나라는 점차 송나라를 공격하였고 한족들을 정복하였다. 이 때 송나라가 저질렀던 치명적인 실수가 하나 있었는데, 바로 송나라가 이때 요나라와 송나라의 국경 사이에 조성했던 거대한 숲을 없애버렸던 것이다.
나중에 기병 위주의 금나라 군대가 물밀듯 밀려오자 송나라는 더 이상 자연의 보호도 받기 어려워졌고, 금나라는 손쉽게 1127년 1월 9일에 송나라의 수도 개봉을 점령하였다.
이 때 금나라는 송나라의 황제 흠종과 태상황이었던 휘종을 잡아갔고, 이들과 함께 조정의 고관대작들도 대거 납치해갔다. 이를 정강의 변이라고 칭하고, 북송 시기가 이를 기점으로 끝난 것으로 본다.
이후 송나라는 남아있는 한족들을 수습하여 중국 강남 지방으로 후퇴, 고종을 새로운 황제로 옹립하였고, 이 시기 이후의 송나라를 남송이라고 부른다.
남송은 남쪽에서 군대를 모아 끊임없이 금나라와 맞서 싸웠으나, 이후 조정에서 주화파가 득세하며 1141년에 송나라의 진회가 금나라와 굴욕적인 평화협상을 맺으며 일시적으로나마 평화가 찾아왔다. 이 협상에서 굴복한 송나라는 화이허 이북의 영토를 모두 금나라에 내주어야 했으며, 당대 최고 명장이었던 악비를 죽여야만 했다. 게다가 세공(歲貢)으로 매년 은(銀) 25만량과 비단 25만 필을 보낼 것을 약속하기도 했다.
이후 대량의 군대를 보내 개봉을 점령하고 중국 북부를 완전히 정복했다.
13세기 초, 금나라는 점차 북쪽의 몽골의 위협을 받기 시작하였다. 1205년, 몽골의 칭기즈 칸은 서하를 침공하여 서하를 약탈했고, 서하 바로 옆에 있던 금나라도 점차 위기감을 느끼기 시작한 것이다. 1211년에는 5만 명에 달하는 몽골 기병들이 금나라 국경으로 들어와 거란, 여진족 반란군들을 모아 힘을 키우기 시작하였다. 당시 금나라는 15만 명에 달하는 기병들로 이들에게 맞섰으나, 몽골이 너무 강력하여 제대로 싸우지도 못하고 패퇴하였다. 결국 위소왕 때 몽골군의 침입으로 본거지인 만주지역을 빼앗겼고, 남송과 서하의 공격도 받았다. 이후 1213년, 몽골족들은 금나라의 수도 중도대흥부를 약탈하였고, 1214년 여름에 금나라는 몽골과 조약을 맺으며 겨우겨우 수도만큼은 지켜내었다. 이후 선종은 중도대흥부를 버리고 개봉으로 수도를 천도하여 몽골의 위협을 어떻게든 피해보고자 하였다.
1216년, 금나라 조정의 일부 신하들이 선종에게 송나라를 공격하여 몽골에게 받은 분을 풀자고 제안하였다. 선종은 이 제안을 받아들여 송을 공격하였으나, 양쯔 강에서 송나라 군에게 패하면서 위신이 추락하였다. 이렇게 되자 금나라는 북쪽의 몽골, 남쪽의 송을 동시에 상대해야만 했으며, 더이상 버틸 수 없는 지경에 이르렀다. 이후 황위에 오른 애종은 국난을 타개하고자 송나라와의 전쟁을 끝내고 수도로 돌아와 나라를 안정시키고자 했다. 그는 서하의 탕구트족과도 평화협정을 맺었다.
1227년에는 칭기즈 칸이 죽었고, 그의 후계자인 오고타이 칸은 1232년 금나라를 다시 침공하였다. 여진족들은 저항하려 하였으나, 1233년에 애종은 개봉을 탈출해 허난지역을 전전하다가 1234년에 채주에서 몽골군에게 포위당하자 자살했다. 뒤이은 말제도 몽골군에게 살해되어 금나라는 10대 120년 만에 멸망했다.