주필산 전투
전투의 전개

요동 방어선 북단의 신성, 최남단의 건안성이 당군의 공격을 막아내고 있으나 중앙의 요동지역 최대의 요동성과 그리고 주변 백암성, 개모성등이 차례로 함락되어 요동의 위기는 이제 극단을 치달았다. 6월11일, 당태종의 당의 대군은 남하하여 안시성 부근까지 진격하였다. 한편 고구려에서는 요동방면에 위기상황을 타개하고자, 거국적인 15만 대군을 긴급히 요동방면으로 급파한다.
마침내 6월 20일, 당의 대군을 맞아 고구려의 대군은 안시성 부근에 도착하여 강 건너 당군을 마주 보고 건곤일척의 승부를 하게 되었다.
이전과 이후의 한국사에서 수 많은 이민족의 침입이 있었지만 대부분의 전쟁 양상은 침공한 이민족을 상대로 농성 혹은 적은 규모의 군으로 항전하였지만 이렇게 단일 전투에서 15만명이상의 대군을 동원하여 이민족의 대군과 평원에서 대등하게 대회전을 했던 경우는 고려가 20만 대군을 동원한 귀주대첩과 더불어 유이하다고 볼 수 있다. 또한 중국의 한족과-한반도의 예맥족 간에 벌어진 단일 전투 사상 거의 유일한 대규모 평원 대회전 전투가 된다. (이후 중국 측 사서에는 667년 고구려와 당의 금산전투에서 고구려군 20만이 동원되었다는 기록이 있으나 자세한 전투의 기록은 없다.)
당나라 진영에서 당태종 이세민은 작전 회의에서 다음과 같이 말했다.
지금 고구려군에게 전략이 있다면 그것은 다음의 세 가지이다. 첫 째는, 군사를 이끌고 직접 앞으로 나가서, 안시성과 연결되는 보루를 쌓고, 높은 산의 험한 지세에 의지하여 성 안의 곡식을 먹으면서 말갈군을 풀어 우리의 마소를 약탈하는 것이다. 이렇게 되면 우리가 공격한다고 해도 빨리 항복받을 수 없고, 돌아가려 해도 늪지가 장애가 될 것이므로, 우리 군사들은 앉아서 곤란한 지경에 처하게 된다. 이것이 상책이다. 둘 째는, 성 안의 군사를 데리고 야간 도주를 하는 것이다. 이것이 중책이다. 셋 째는, 자기의 지혜와 재능을 모르고, 우리와 대적하는 것이다. 이것이 하책이다. 그대들은 두고 보라. 그들은 필히 하책으로 나올 것이니, 그들을 사로잡게 되는 작전이 내 눈 앞에서 벌어질 것이다.
사서에 기록된 당태종 이세민이 언급한 첫 번 째 전략은 적의 대군이 몰려왔을 때 단기 승부로 바로 맞서지 않고 험한 지형의 장점에 의지하여 장기전으로 전쟁을 몰고 가며 침공군의 보급의 약점을 공략하는 고구려 방어군의 가장 확실한 전략이었다.

한편 반대편 고구려 진영에서는 나이 많고 경험이 풍부한 대대로 고정의가 북부욕살 위두대형 고연수와 남부욕살 대형 고혜진에게 말했다.
당태종은, 안으로는 여러 영웅들을 쳐 없애고, 밖으로는 오랑캐들을 굴복시켜 스스로 왕이 되었으니, 이는 세상을 제도하라는 천명을 받은 인재이다. 지금 그가 전국의 군사를 이끌고 왔으므로 이에 대적할 수는 없다. 나의 계책은, 군사를 정비하되 싸우지 않고, 여러 날을 두고 지구전을 펴면서 기습병을 보내 그들의 군량 수송로를 차단하는 것이다. 저들은 군량이 떨어지면 싸우려 해도 싸울 수 없고, 돌아가려 해도 갈 길이 없게 될 것이다. 이 때만이 우리가 승리할 수 있는 때이다.
고구려에도 인물이 있었다. 고구려의 대대로 고정의는 이러한 당의 침공군의 약점을 정확히 간파하여 당과 바로 승부를 내기 보다는 최대한 침공군과 전투를 피하고 지구전을 통해 침공군을 약점을 최대화하려 하였다. 하지만 선봉 고연수와 고혜진은 기만의 명수 당태종의 계략에 넘어가게 된다.
당태종이 곧 장손무기 등 신하들과 함께 수백 명의 기병을 데리고 고지에 올라 산천의 형세 가운데 복병시킬 수 있는 곳과 병력의 출입이 가능한 곳을 관찰하였다. 이 때 강 건너의 고구려군은 말갈군과 연합하여 진을 치고 있었으니 그 진의 길이는 40리에 달할 정도로 형세가 컸다.
당태종이 이러한 고구려의 대군을 보고 크게 두려워하는 기색을 나타냈다. 고구려-당 전쟁 시작 이래 늘 숫적으로 당나라군이 우위에 있었고 맞서는 고구려군이 이렇게 많은 수가 몰려와 진을 치고 있는 모습을 당태종은 본 적이 없었다. 이 때 강하왕 이도종이 말했다.
"고구려는 전력을 다하여 천자의 군대를 방어하고 있으니, 틀림없이 평양의 수비에는 약점이 있을 것입니다. 저에게 정예군 5천 명을 주시어, 그들의 근본을 뒤엎게 하십시오. 그리하면 싸우지 않고도 수십만 군사를 항복시킬 수 있습니다."
이것은 예전 중국 삼국시대 때 위나라 장수 등애가 촉나라를 공략하기 위해 한중에 주둔하고 있는 촉군을 피해 촉의 수도 성도를 기습하는 계책과 같았다. 하지만 자존심이 강한 당태종 이세민은 이런 모험적인 전략을 채용하지 않고 정공법으로 물리치려 하였다.
한편 선봉 고연수와 고혜진은 군사를 거느리고 강을 건너 안시성 밖 40리까지 진군하였다. 당태종 이세민과 당군의 수뇌부가 걱정하는 것은 고구려의 대군이 안시성과 연계하여 수성 및 지구전을 펼치는 것이었다. 따라서 고구려군을 최대한 끌어 들이기 위해 앞서 고구려 고돌발에게 중상을 입은 계필하력 대신 돌궐 출신 좌위대장군 아사나두이에게 명하여 돌궐의 기병 1천 명을 이끌고 고구려군을 유인하기 위해 공격을 하였다. 첫 교전에서 당 나라 군사가 크게 패하였고, 선봉 고연수는 "다루기가 쉽구나"라고 말하며, 앞을 다투어 진격하였다. 마치 수 백년 전 고구려-위 전쟁때 관구검의 유인전술에 고구려 동천왕이 말려들었던 것처럼 고연수는 안시성 동남방 8리 지점까지 진격하여 산에 의지하여 진을 쳤다.
고구려군을 안쪽으로 끌어 들이는데 성공한 당태종은 다시 한번 고구려군을 방심하게 하려고 사신을 보내 고연수에게 거짓으로 말했다.
"나는 너희 나라의 권력 있는 신하가 임금을 시해한 죄를 물으러 온 것이니, 우리가 서로 전투를 하게 된 것은 나의 본심이 아니다. 너희 나라 경내에 들어오니 마초와 양식이 충분하지 않아 몇 개 성을 빼앗기는 하였으나, 너희 나라가 신하의 예절을 지킨다면 잃었던 성은 반드시 돌려 줄 것이다."
이미 초전에 승리를 거둔 고연수는 이 말을 믿고, 방심하여 제대로된 수비 태세를 더 갖추지 않았다.
6월21일 밤, 이세민은 문무관을 불러 계책을 의논한 다음, 이세적에게 보병과 기병 1만 5천 명을 주어 서쪽 고개에 진을 치게 하고, 장손무기와 우진달에게 정예군 1만 1천 명을 주어 기습병을 조직하였다. 그들은 산의 북쪽에서 협곡으로 나와 우리 군사의 후면을 공격하게 하고, 이세민은 직접 보병과 기병 4천명을 이끌고 북과 나팔을 옆에 끼고 깃발을 눕혀서 산으로 올랐다. 이세민은 모든 군대에게 북과 나팔 소리가 들리면 일제히 맹공하라고 명령하였으며, 또한 관리에게는 항복받을 장막을 조회당 옆에 설치하도록 명령하였다.
이 날 밤, 유성이 고연수의 고구려군 진영에 떨어졌다. 6월22일 아침, 마침내 고연수 등은 유인하러 온 이세적, 장손무기의 군사가 적은 것만 보고 군사를 동원하여 공격하려 하였다. 당태종 이세민은 전방의 고구려군을 유인하려던 장손무기의 부대에서 먼지가 일어나는 것을 보고는, 북을 치고 나팔을 불며 깃발을 들게 신호를 보내도록 하였다. 이에 따라 당의 모든 군사들이 북을 치고 함성을 지르며 진격하였다. 갑작스러운 당의 대군의 사방에서 몰려들자 고연수는 크게 놀라 군사를 나누어 방어하려 하였다. 그러나 고구려 진영은 사방에서 몰려드는 당군의 공격에 이미 큰 혼란에 빠지고 말았다.
동서고금을 막론하고 포위된 쪽은 거의 일방적인 학살전이 이루어졌다. 카르타고 전쟁때 한니발군이 로마군을 포위에 넣고 일방적인 학살전을 벌였던 칸나에 전투 때도 그랬던 것처럼 삼면이 포위된 고연수의 고구려군과 말갈군은 거의 일방적으로 몰리고 있었다.
전투 당일 비가 왔던 것으로 추정된다. 사서에는 마침 천둥과 번개가 쳤는데, 당나라군에서 사병 설인귀가 기이한 복장을 하고, 고함을 치면서 고구려 진영으로 깊숙히 들어왔다고 기록되어 있다. 당나라의 대군이 이 때를 이용하여 공격해왔다. 또한 한 쪽에서는 신라의 골품 귀족 출신이었던 좌무위 과의(左武衛 果毅)설계두는 선봉에서 서서 포위한 고구려군과 격렬히 전투를 벌이며 용감히 싸웠으나 전사하고 말았다. 삼면으로 포위된 고구려군은 크게 패하였고 고연수, 고혜진은 마침내 당의 공격 포위망을 빠져 동쪽 강가로 다시 돌아왔으나 이미 3만(?)여 명의 사망자가 생겼다.
고연수, 고혜진은 남은 군사를 거느리고 강 건너 고구려 본군으로 합류하려 하였으나 이미 당태종은 장손무기에게는 교량을 전부 철거하여 고구려 군사의 귀로를 차단하게 하였다. 결국 고구려 본대와 합류하지 못한 고연수, 고혜진은 강을 건너지 못한 채 남은 군을 이끌고 북쪽 산에 의지하여 자체 수비를 강화하였다. 이제 당태종 이세민은 모든 부대에 명령하여 고구려 군사를 포위하게 하고, 이로써 고구려군은 완전히 고립되었다.
한편 치열한 전투가 끝나고 당태종은 신라인 임에도 자국인보다 목숨 바쳐 싸우다 전사한 설계두에 크게 감명받아 측근을 시켜 설계두의 시신에 어의(御衣)를 덮어주고, 대장군에 추증하고, 예로써 장사를 지내 주었다. 또한 당태종은 활약이 뛰어났던설인귀의 공을 크게 치하하며 그를 유격 장군으로 임명하였다.
6월23일, 포위된 고연수 고혜진의 고구려군을 구원하고자 고구려군이 강을 건너 대공격을 시작한다. 그리고 이에 맞서 고구려군의 도하를 저지하려던  당나라군과 큰 교전을 시작된다. 이 때 밀려온 고구려 대군을 맞서기 위해 선봉으로 지휘하던 당나라 좌무위장군 왕군악이 전사할 정도로 전투는 치열했다.
하지만 고구려 본군은 고립된 고연수와 고혜진의 부대에 도달하지는 못한 것으로 보인다. 포위된 고연수와 고혜진의 부대는 더 이상 버티지 못하고 마침내 남은 군사 3만 6천8백 명(?)을 이끌고 항복하였다. 당태종 이세민은 욕살 이하의 관장 3천 5백 명을 선발하여 당나라 지역으로 옮기고, 나머지는 모두 석방하여 평양으로 돌아가게 하였으며, 말갈인 3천 3백 명은 전부 생매장하였다. 말 5만필·소 5만두·명광 갑옷 1만 벌을 노획하였으며, 기타의 기자재도 노획하였다.이세민이 갔던 산의 명칭을 주필산으로 개명하고, 고연수를 홍려경, 고혜진을 사농경에 임명하였다.
당태종이 이끄는 당나라군은 아직 후방에 고구려 대군의 일부가 있었지만 안시성 앞 주필산에서 고구려군을 격파하고 선봉 고연수와 고혜진이 항복하고 3만여 고구려군이 투항하였다. 이제 당나라군은 눈 앞의 안시성을 향해 정조준하기 시작한다.(주필산지역에서 50여일을 머물다가 안시성으로 진격하기 시작한다)