1227년 칭기즈 칸이 죽고 2년 뒤 오고타이 칸이 뒤를 이었다. 오고타이 칸은 먼저 금나라에 화평 사절을 보냈으나, 금은 몽골 사절을 죽이는 것으로 답하였다. 그러자 격노한 오고타이 칸은 금을 침공하기로 결정한다. 당시 황하 북부의 대부분은 이미 몽골에게 넘어가 있었고, 금나라의 영역은 서쪽의 시안에서 황하를 따라 동쪽으로 가면서 황하 남쪽의 낙양과 개봉을 지나 황해에 이르는 길고 넓은 띠 모양으로 축소되어 있었다. 황하 연안, 특히 수도인 개봉 근처의 금나라 영토는 강과 수로, 요새들이 겹겹히 있어서 몽골군의 장기인 기병이 마음대로 활동하기 힘들었으며, 금나라의 남쪽 국경은 상대적으로 기병이 활동하기 수월했지만 몽골이 그쪽을 공략하기 위해서는 먼저 남송을 통과해야만 했다. 이에 따라 당시 몽골이 금나라를 공격할 통로는 크게 두 곳이 있었다. 첫째는 화북의 몽골 영토에서 황하의 중류나 하류를 도하한 뒤 그물 같은 수로망을 피해 금의 수도인 개봉을 공격하는 길이었고, 둘째는 아예 서쪽으로 움직여 장안을 지나 동관을 돌파하여 동쪽으로 내려오는 길이었다. 이에 대비하여 금나라는 낙양에서 개봉까지 이르는 길에 20만 대군을 배치해 몽골군의 황하 도하를 막는 동시에, 동관에도 군사를 두어 서쪽으로부터의 공격에 대비하였다. 당시 금나라의 국력은 완전히 기울어 있었지만, 완안진화상이라는 명장이 등장하였고, 역시 금나라 최후의 명장 중 하나인 완안합달이 버티고 있었으며, 시대를 잘못 타고났지만 명군의 자질이 있었던 금 애종이 국가의 역량을 최대한 집결시켜 몽골제국의 공세를 막아내기 위해 노력했다. 몽골군의 본격적인 침공은 1230년부터 시작되었다. 오고타이 칸은 먼저 장안에서 시작하는 두 번째 루트를 선택하였는데, 이를 위해 몽골의 명장 수부타이에게 동관을 공략하라고 명령하였다. 당시 금나라의 장수 완안진화상은 군중의 일을 처리하다가 월권 행위를 했다는 이유로 감옥에 18개월 동안 갇혀 있었는데, 본래는 사형죄였으나 금애종은 완안진화상을 석방하여 몽골군과 싸우는 선봉으로 내세웠다. 그리고 완안진화상은 대창원에서 400명의 병사를 이끌고 20배에 달하는 8,000여 명의 세계 최강 몽골군을 격파하였다. 대창원 전투의 승리는 몽골군이 1221년 파르완 전투에서 잘랄 웃 딘에게 패배한 이후 처음 겪는 완패이었는데, 파르완 전투는 6만에 가까운 병력이 소수인 몽골군을 격파한 전투였다는 것을 고려한다면, 월등한 다수의 몽골군이 더 적은 수의 적에게 패배한 최초의 전투라고 할 수 있다. 이 전투의 결과로 완안진화상은 정원대장군 직을 받게 되었다. 이때 완안진화상이 이끈 부대가 충효군(忠孝軍)이다. 충효군은 금나라 말기 정예부대로, 몽골의 포로가 되었다가 탈출한 나이만, 강족, 위구르 족, 그 외 거란, 여진 등까지 섞인 다민족으로 구성되어 있었다. 기본적으로 말을 탈 줄 아는 사람들이었기 때문에 기병전력이 부족한 말기 금나라에 있어서 아주 강력한 전력이었다. 충효군은 비록 전투력이 강해도 성질이 거칠고 사나워 제어하기 어려운 부대였는데, 완안진화상은 부대의 규율을 바로잡고 민간인을 함부로 약탈하는 것도 막았다. 다음해인 1231년 몽골군은 서쪽과 동쪽에서 동시다발적으로 공세를 시작하였다. 먼저 서쪽에서는 경양을 포위하고 그 전년도처럼 대창원을 거쳐 동관으로 진입하려 하였다. 동쪽에서는 이와 조금 차이를 두고 한인 출신 장군인 사천택이 이끄는 몽골군이 남하하여 황하 북쪽에 아직 남아있던 금나라 영토인 위주(衛州)를 공격하였다. 위주는 금의 수도인 개봉의 바로 북쪽에 있어서, 위주를 빼앗긴다면 비록 황하라는 천연 장애물이 남아 있다고 해도 수도 방어에 상당한 압박을 받게 될 수 있었다. 이러한 몽골군의 양동 공격에 대응하여 금나라는 대장군 이랄포아(移刺蒲阿)이 지휘하는 일군을 서쪽으로 보내 경양을 구원하는 한편, 완안합달과 완안진화상이 이끄는 10만 대군을 파견하여 위주를 돕게 하였다. 서쪽 방면의 금군은 또 다시 대창원에서 승리를 거두고 경양의 포위를 푸는데 성공하였고, 이후 이랄포아는 위주로 이동하여 완안합달의 군대에 합류하였다. 이랄포아가 합류한 동쪽 방면의 금군은 이러한 수적 우세에 힘입어 서전에서 몽골군을 격파할 수 있었다. 완안합달-이랄포아 연합군에게 패배한 몽골군은 북쪽으로 물러면서 일부의 군대를 금군의 배후로 은밀히 이동시켰는데, 이 몽골 별동대가 금군의 후방을 급습하는 동시에 후퇴하던 몽골군이 역습을 가해오면서 금군은 크게 패하였고 위주를 몽골에게 내주었다. 한편 다시 서쪽 전선에서는 이랄포아가 위주를 구원하러 이동한 뒤 몽골군이 다시 대규모 공세를 퍼부어 대창원을 함락시켰고, 몽골군의 기세에 당황한 금군은 장안을 포기하고 그 지역의 모든 인구를 동쪽으로 피신시켰다. 금나라는 장안의 동쪽에 있는 동관을 아직 차지하고 있었지만, 이랄포아와 완안합달이 지휘하는 금군은 동관에 머무른채 소극적으로 나서고 있었다. 그 와중에도 안안진화상이 지휘하는 1천 명의 병력은 동관을 공격한 몽골군을 격파하였다. 동관의 서부를 완전히 장악한 몽골군은 이곳에서 여름을 보낸 뒤, 툴루이의 제안에 따라 군대를 세 갈래로 나누어 금나라의 수도 개봉을 공격하였다. 당시 금나라의 국경을 보면 북쪽과 서쪽은 각각 황하와 험준한 산맥을 경계로 몽골을 접하고 있었고, 남쪽은 평야 지대를 두고 남송과 접하고 있었는데, 기병이 주력인 몽골군은 황하를 도하하거나 산악지대를 돌파하는데 어려움을 겪고 있었다. 이를 타개하기 위해 툴루이가 지휘하는 서군은 금군이 집결해 있는 동관을 크게 우회하며 남동쪽으로 원을 그리면서 한중을 돌파하여 남송의 영토를 통과한 뒤, 한수를 건너 남쪽으로부터 개봉을 급습하기로 하였다. 그동안 오고타이 칸이 이끄는 북군은 낙양과 개봉 사이의 몽골 영토에서 대기하고 있다가 금나라의 군대의 관심이 서남쪽의 툴루이에게 쏠리는 사이 안전하게 황하를 도하할 기회를 엿보기로 하였다. 또한 일군의 몽골군은 동쪽에서 금나라를 위협하였다. 툴루이가 한수를 건너자 완안진화상은 동관의 수비병을 제외한 금나라의 마지막 정예병 20만을 이끌고 몽골군을 격파하려고 했다. 금나라군은 한수 건너에서 벌어진 몇 차례 전투에서 격렬하게 싸운 끝에 몽골군 상대로 승리를 거두었지만, 몽골군의 기동력 때문에 잠시 시간을 늦췄을 뿐이다. 한수를 건너는 데 성공한 툴루이는 수적인 열세를 만회하기 위해 완안진화상을 견제하기 위한 일부 병력만 남기고 금나라군이 주둔한 곳을 우회해서 개봉으로 진격했다. 이를 알게 된 금나라군은 개봉을 향해 진군했지만, 몽골군이 인근 마을을 초토화시키고 기습전략을 펼쳐서 금나라군이 개봉까지 휴식없는 강제행군을 하게 만들었고, 이 가운데 거센 비와 폭설까지 내리는 바람에 금군은 굶주리고 서서히 지치기 시작하였다. 금군이 개봉에서 120km 정도 떨어진 균주성 근처의 삼봉산(三峰山)까지 도달했을 때 몽골군이 금군을 포위하였다. 몽골군은 의도적으로 균주 방향의 포위망을 일부 열어주었고, 많은 금군이 탈영하여 균주성 방향으로 흩어지자 몽골군은 이를 기습하였고, 결국 금나라의 남은 정예병은 궤멸되었고 명장 완안진화상도 몽골군에게 스스로 찾아가 죽기를 자처해서 죽음을 당했다.(삼봉산 전투) 마침내 균주성이 몽골군에게 함락되었고, 이때 동관에 있는 11만 병력도 개봉을 향해 가는 도중에 몽골군에게 궤멸되면서 이제 몽골군의 진격로엔 아무도 없는 것이나 마찬가지였다. 그리고 황하 이북이 무주공산이 되자 이를 틈타 북쪽에서 대기하고 있던 오고타이 칸은 황하가 얼어붙을 때를 기다려 친위대를 이끌고 안전하게 강을 건너와 남쪽으로 진군하여 툴루이와 합류하였다. 오고타이 칸의 합류로 몽골군의 군세는 5만명까지 불어났다. 그리고 마침내 몽골군은 개봉을 포위하기 시작하였다.