唐太宗时期
唐初贞观年间,唐朝攻灭东突厥汗国、吐谷浑汗国、西域诸国,打败薛延陀汗国,四夷威服。贞观十七年(643年),新罗遣使入朝,述说高句丽图谋断绝其唐朝的通路。唐太宗李世民派人出使高句丽,命其停止争战,遭高句丽拒绝,唐太宗遂决定发兵东征高句丽。
贞观十八年(644年),唐太宗以张亮为平壤道行军大总管,率江、淮、岭、硖兵四万,长安、洛阳募士三千,从莱州走海路向平壤进军。又以李世勣(李勣)为辽东道行军大总管,率军六万,以及兰、河二州归降的胡人,向辽东进军。因为唐太宗动用的军队数量远少于隋炀帝杨广动用的,给百姓造成的负担远小于隋炀帝杨广造成的,所以隋炀帝征高句丽时出现百姓打断自己的手足来躲避出征与徭役,而唐太宗征高句丽时没有出现这种情况。唐太宗说:“炀帝无道,征辽东时,人们打断自己的手足来躲避出征与徭役。朕现在征高句丽,都是选那些愿意出征的人,募十得百,募百得千,一些没能跟随出征的人,都愤叹郁邑。”
贞观十九年(645年),李世勣率军到达幽州。三月,唐太宗的车驾至定州。唐太宗亲自慰问生病的士兵,把他们托付给州县治疗。有很多人不预征名,自愿以私装从军,都说“不求县官勋赏,惟愿效死辽东。”唐太宗不允许。
夏,四月,李世勣(李勣)率军自通定渡过辽水,到达玄菟。高句丽非常害怕,城邑都闭门自守。李道宗率数千士兵到新城。张俭率军渡过辽水,向建安城进军,击败高句丽兵,斩首数千级。李世勣攻占高句丽的盖牟城,俘获两万多人,粮食十余万石。张亮率军从东莱渡海,进攻卑沙城。程名振率军在夜里到达,王大度为先锋。五月,唐军攻占卑沙城,俘获男女八千人。分遣总管丘孝忠等曜兵于鸭绿水。
李世勣率军到达辽东城外。高句丽步骑四万来救辽东城。李道宗将四千骑兵迎战,李世勣也引兵帮助李道宗,打败高句丽军。唐军斩首敌军千馀级。
李世勣率军攻辽东城,唐太宗率精兵与其汇合。唐军攻占辽东城,杀敌一万多人,俘获敌军一万多人,还俘获男女四万人。以其城为辽州。
唐军进军白岩城。李思摩被弩矢射中,唐太宗亲自为其吮血。将士闻之,没有不感动的。高句丽乌骨城派一万多军队支援白岩城。契苾何力率八百骑兵去攻击他们。契苾何力亲自杀入敌人的阵地,被刺中腰,薛万备救出契苾何力,契苾何力捆住伤口,继续作战,跟随他的骑兵奋力进攻,打败高句丽军,追杀数十里,斩首千馀级,因为日落天黑而停止。
六月,唐军占领白岩城。以白岩城为岩州。以盖牟城为盖州。
车驾从辽东城出发,到达安市城外。高句丽北部耨萨延寿、惠真率高句丽、靺鞨兵十五万来救安市城。延寿率军到达距离安市城四十里的地方。唐太宗命令阿史那社尔率一千突厥骑兵去诱敌,刚交战就假装退走。高句丽军争相前进,到达安市城东南边八里的地方,依山列阵。唐太宗亲自与长孙无忌等人以及数百骑兵到高处观察山川形势,可以伏兵以及出入的地方。唐太宗命令李世勣率军队一万五千设阵于西岭,长孙无忌率精兵一万一千为奇兵,从山北出狭谷去攻击敌人的后方。唐太宗亲自率领军队四千,挟鼓角,偃旗帜,登北山上,命令各军听到鼓角声就一起出击奋力进攻。延寿看到李世勣布阵,结阵要作战。唐太宗望见长孙无忌军尘起,命令作鼓角,举旗帜,各路军队鼓噪并进,延寿等人大惧,想分兵抵御。唐将薛仁贵大喊的冲入高句丽军阵,所向无敌。唐军进攻,高句丽军大溃。唐军斩首两万多级。
延寿等人率领剩余的军队依山自固。唐太宗命令诸军包围之。长孙无忌撤了桥梁,断了高句丽军的归路。延寿、惠真率三万六千八百人投降,入军门,膝行而前,拜伏请命。唐太宗选出耨萨及以下酋长三千五百人,迁往内地,其他的都释放,让他们回平壤,他们都举起双手以头顿地,欢呼声传到数十里之外。此外,这一战还缴获马五万匹,牛五万头,铁甲一万多领,以及其他大量兵器。高句丽全国都非常震惊害怕,后黄城、银城的高句丽人都自己弃城逃走,数百里没有人烟。
九月,唐军开始围攻安市城。由于守军殊死抵抗,使唐军未能攻克。时近深秋,唐太宗因为当地变冷早、草枯水冻、士马难以久留、而且粮食将尽,所以班师还朝。
唐太宗是从容班师。班师时唐太宗还耀兵于安市城下,安市城的人皆屏迹不出,安市城主登城拜辞,唐太宗赞赏安市城主的坚守与忠诚,赐给安市城主缣百匹。之后的返回路上,唐太宗听说太子来了,为了尽快见到太子,唐太宗还骑马奔驰,这种情况下骑马奔驰,由此可见,在征高句丽以及班师过程中,唐太宗显然没有受伤。
唐太宗因为没有攻灭高句丽而认为没有成功,而后悔,但是唐军的战果远大于损失。此次唐太宗征高句丽,攻占玄菟、横山、盖牟、磨米、辽东、白岩、卑沙、麦谷、银山、后黄十座城,徙辽、盖、岩三州户口七万人到中国,新城、建安、驻跸三大战,消灭大量高句丽军队,斩获高句丽首级达到四万余级(通常杀敌数远多于斩首数,例如平壤之战明军斩首就800百、但是小西第一军损失却超过1万),唐军士兵死了接近两千人,马匹死了八千匹。(唐太宗亲征高句丽时,唐军取得多次大胜,单是其中消灭高句丽的高延寿高惠真15万军队的那次,唐军还缴获马五万匹,牛五万头,铁甲万领,以及大量其他装备。)唐太宗亲征高句丽,战果远大于损失。
唐太宗回朝后,群臣建议对高句丽派偏师进袭骚扰,使其国人疲于应付,耽误农时,几年后即可使高句丽因粮荒而土崩瓦解,太宗采取了这一建议。以后,唐军采取了对高句丽发动骚扰性攻击的策略,共有以下几次:贞观二十一年(647年),太宗命牛进达、李勣、李海岸率军从水陆两路进扰高句丽。李勣率军渡过辽水,途经南苏等数座城,高句丽兵多背靠城墙拼战,李勣将他们打败,并焚烧其外城后回师。牛进达、李海岸率军进入高句丽境内,经历一百多次战斗,战无不胜,又攻克石城。进军到积利城下,高丽兵一万多人出城迎战,李海岸将其击败,斩首二千级(通常杀敌数远多于斩首数)。十二月,高句丽王让他的儿子莫离支任武入朝谢罪。贞观二十二年(648年)古神感率唐军渡海攻打高句丽,遇到高句丽军步骑5000,唐军在易山击破了他们。当晚,1万多高句丽军袭击古神感的船,再次被古神感击败。薛万彻率唐军渡过鸭渌,到达泊灼城,高句丽人害怕,放弃邑居而逃跑,大酋所夫孙抵抗,薛万彻击斩所夫孙,又击破3万高句丽援军。百济与新罗也参与进了唐与高句丽的战争,百济攻破的新罗13座城。