고려는 고구려를 계승하여 북진정책을 추진하였다. 그러나 고려의 북진정책은 거란의 동진정책과 충돌할 수밖에 없었다. 942년 거란이 고려를 침략하려고 하자, 고려는 光軍 30만을 편성하여 대응하였다. 거란은 침략을 포기하였지만, 991년 압록강 연안에 성을 쌓고 군대를 배치함으로써 양국은 전쟁에 돌입하게 되었다. 전쟁은 993년, 1010년, 1018년 세 차례 있었다. 그러나 고려가 모두 승리하였다.
고려 거란 1차전쟁은 993년 10월에 있었는데, 봉산 전투와 안융진 전투로 구분할 수 있다. 개활지에서 전개된 봉산전투는 진격과 후퇴가 자유로운 거란 기병이 승리하였다. 거란 소손녕은 청천강을 건너 안융진을 공격하였다. 이때 고려 서희장군과 소손녕이 고구려 계승문제를 가지고 담판을 벌였다. 서희는 거란에게 사대한다는 조건으로 강동 6주를 할양받고 전쟁을 종결시켰다.
고려 거란 2차전쟁은 1010년 11월에 있었다. 전투는 통주 三水砦 전투와 서경 전투로 구분할 수 있는데, 삼수채 전투에서는 거란 성종이 이끈 20만 군대와 고려 강조가 거느린 30만 출정군이 맞붙은 전투였다. 강조는 휘하의 3군 중 중군은 3개 하천이 모이는 통주 서쪽에, 좌군은 부근의 산에, 우군은 성을 등지고 진을 쳤다. 초기전투는 劒車를 앞세운 강조의 군대가 우세하였지만, 작전을 소홀히 한 결과 야율분노가 이끄는 기병돌격대의 기습을 받고 패배하였다. 서경 전투는 고려의 탁사정, 지채문 두 장군과 승려 法言의 활약으로 서경 외곽에서 크게 승리하였다. 그러나 평야지대인 마탄에서는 역습을 당해 크게 패배하였다.
고려 거란 3차전쟁은 1018년 12월에 있었으며, 흥화진의 삼교천 전투와 금교역 전투로 구분된다. 삼교천 전투에서는 상원수 강감찬이 삼교천 상류 물을 저장해 두고, 강건너 쪽에 기병 1만 2천을 매복시킨 다음, 거란군이 삼교천을 건느려고 할 때 둑을 터트려 크게 승리하였다. 금교역 전투에서는 강민첨과 조원이 크게 승리하였다.
Inheriting Koguryo, Koryo promoted northward expansion policy. Koryo’s northward expansion policy inevitably collided with Georan’s eastward expansion policy. As Georan invaded Koryo in 942, Koryo mobilized the Gwang Army(光軍) of 300,000 to confront the invader. Georan gave up the invasion, but it again constructed walls and deployed its army along the Aprok River(鴨 綠江) in 991 and the two countries rushed into a war again. There were three wars in 993, 1010 and 1018 and Koryo won all of them.
The first war between Koryo and Georan occurred in October 993, which was divided into the Bongsan(蓬山) Battle and the Anyungjin(安戎鎭) Battle. Because the Bongsan Battle was fought in an open field, Georan cavalry, which was free in advancing and retreating, defeated the Koryo force. So Sonnyeong( 蕭遜寧) in Georan crossed the Cheongcheon River and attacked Anyungjin. At that time, General Seo Hee(徐熙) in Koryo negotiated with So Son-nyeong over the succession to Koguryo and, on the condition of submission to Georan, he bought the war to a conclusion and was ceded the six provinces on the east of the Aprok River.
The second war between Koryo and Georan was in November 1010, which was divided into the Samsuchae(三水砦) Battle at Tongju(通州), and the Seogyeong(西京) Battle. In the Samsuchae Battle, a force of 200,000 led by King Seongjong of Koryo collided with 300,000 soldiers under the command of Gang Jo(康兆) in Koryo. Gang Jo, who commanded three armies, pitched the camp of the central army on the west of Tongju where three rivers merged, the left army at a mountain near Tongju, and the right army with the wall in the background. Gang Jo’s force with sword chariots(劒車) at the head was predominant at the beginning of the battle but, as it was neglectful of strategies, the army was defeated by the surprise attack of a cavalry raiders led by Yayulbunno(耶律盆奴). At the battle outside Seogyeong, however, General Tak Sa-jeong(卓思政) and Ji Chae-mun(智蔡文) and Priest Beopeon(法言) brought a great victory to Koryo but, again, Koryo army was severely defeated by the counterattack at Matan(馬灘), a plain area.
The third war between Koryo and Georan broke out in December 1018, which was divided into the Samgyocheon Battle at Heunghwajin(興化鎭) and the Geumgyoyeok(金郊驛) Battle. In the Samgyocheon Battle, General Gang Gam-chan(姜邯贊) dammed off the flow of the Samgyo River, ambushed 12,000 cavalry soldiers on the opposite side of the river, and burst the dam when the Georan force was going to cross the Samgyo River. This tactic ended up in a sweeping victory. In the Geumgyoyeok Battle, Gang Min-cheom(姜民瞻) and Jo Won(趙元) beat off Georan forces.