1212년(강종 1)에 거란[契丹]족 출신인 야율유가(耶律留哥)가 금나라에 반기를 들고 일어나 융안(隆安: 현 만주 농안 부근)에 자리잡았는데, 그 무리가 10만이 넘었다. 야율유가는 한때 도원수(都元帥)로 추대되어 요왕(遼王)으로 불렸으나, 몽골 제국의 태조인 칭기즈칸을 받들게 되어 그의 지위는 동생인 야율사포(耶律斯布)에게 넘어갔다. 이어 야율사포가 그의 부하에게 피살당하자 승상 걸노(乞奴)가 무리를 이끌고 스스로 감국(監國)이라 칭하고 거란 부흥 운동을 일으켰다. 그러나 몽골에 항복했던 야율유가가 몽골군의 선봉장이 되어 걸노를 공격하자, 걸노는 9만의 군대를 이끌고 고려를 침입하게 되었다. 이것이 고려 후기에 고려와 거란 사이에 일어난 최초의 충돌이었다.
1216년(고종 3)에 거란군은 압록강을 건너 대부영(大夫營)으로 진격하였는데, 그들은 고려의 북계병마사(北界兵馬使)에게 사람을 보내 말하기를 “군량을 주면 강토(疆土)를 침범하지 않을 것이며, 뒷날 황기(黃旗)를 세워 놓으면 나와서 황제의 조칙(詔勅)을 들어라.”라고 하였다. 고려가 이에 응답하지 않자 그들은 영주(寧州: 현 평안북도 안주), 삭주(朔州: 현 평안북도 삭주) 등의 여러 진(鎭)을 공격하여 재물과 곡식 등을 빼앗아 갔다.
이에 고려 조정에서는 노원순(盧元純) · 오응부(吳應富) · 김취려(金就礪)를 각각 중군 · 우군 · 후군의 병마사로 삼아 거란군을 막게 하였다. 같은 해 9월에 적이 청천강 방면으로 침입하자 조양진(朝陽鎭: 현 평안남도 개천)에 주둔하고 있던 고려군은 이를 격파하고, 이어 연주(連州: 현 평안남도 개천), 창주(昌州: 현 평안북도 창성), 구주(龜州: 현 평안북도 구성) 등 각지에서 거란군을 물리쳤다. 이후 장군 이양승(李陽升)이 장흥역(長興驛)에서 적을 공격하자 적이 창주에서 연주(延州)의 개평역(開平驛: 현 평안북도 영변)과 원림역(原林驛)으로 옮겨 주둔하였는데, 종일토록 행렬이 이어졌다.
고려군은 진군하다가 연주(延州)에 머물렀는데 고려는 삼군이 도착하였음에도 감히 전진하지 못하다가, 후군의 김취려가 장군 기존정(奇存靖)과 더불어 적군의 포위를 돌파하면서 적군을 치니 거란군이 무너졌다. 뒤이어 김취려가 적을 추격하여 개평역을 지나자, 역의 북쪽에 매복해 있던 거란군들이 급히 중군을 기습하였다. 이에 고려 군사들이 거란군과 맞서 싸워 큰 승리를 거두었다. 이는 고려군과 거란군 간의 전투 중에서 최초의 대규모 전투이며, 고려군이 이 전투에서 승리하면서 거란군의 기세를 크게 꺾었다.
개평전투 이전에 고려군은 거란군과 한 전투에서 대개 변방의 소규모 전투에서만 승리한 적이 있었을 뿐 큰 전과(戰果)는 얻지 못하였다. 그러나 이 전투부터는 규모가 커지고, 고려군이 조직적으로 전투에 참여하면서 이 전투는 거란군이 소탕되기 시작하는 계기가 되었다.