开皇八年(588年)冬天,隋朝兴兵平南朝的陈,刚二十岁的杨广是领衔的统帅,真正指挥全军的是高颎,在前线作战的是贺若弼和韩擒虎等名将。平陈后,进驻建康,杀掉了陈叔宝的奸佞之臣及宠妃张丽华,封存府库,将陈叔宝及其皇后等人带返隋京。班师后,杨广晋封太尉。平陈之后因为隋朝政策有所偏差,江南各地叛乱。
此后,杨广亦屡立战功。开皇十年(590年),他奉命赴江南任扬州总管,与杨素一起平定江南高智慧的叛乱,杨素后封越国公。
杨广从并州改镇扬州,在镇守江南期间为稳定叛变局势颇有成效、政绩突出。同时他表现得作风简朴、不好声色、礼贤下士、谦恭谨慎,由此赢得了朝野赞颂和隋文帝夫妇的欢心。
589年,隋灭陈统一中国,结束了中国长达300年的分裂局面。统一中国后,隋朝开始要求周边国家、民族为其臣属,并得到了其中大多数国家的认可。但高句丽平原王和后来的婴阳王对此反对,认为高句丽与隋朝应该是平等的。
高句丽曾多次小规模袭击隋北部边疆。对此隋文帝很不满。596年,隋的特使在突厥遇到高句丽在突厥的特使后,隋文帝传书高句丽要求高句丽终止与突厥的军事联盟,停止对隋边疆的骚扰并对隋表示臣服。高句丽婴阳王虽然表面上接受了隋文帝的最后通牒,但第二年,597年,平阳王联合靺鞨先发制人攻击隋在河北的军事驻地。
第一次战争(598年)
598年,隋文帝派他小儿子杨谅协高颎和大将周罗睺率30万海陆大军攻打高句丽。
杨谅的军队去时正赶高句丽的雨季。大雨使杨谅的军队前行和物资供应变得艰难。高句丽的频频袭击使杨谅的军队损失惨重。感到无法攻克高句丽,杨谅决定与周罗睺的海军会合。
周罗睺的海军同时也是困难从从。虽然隋的海军尽可能地靠着海岸前行,但海上的大浪使许多船只颠覆。隋的海军一抛锚休息,高句丽的先遣部队就会出现进行袭击。周罗睺和姜以式的5万高句丽海军在渤海交锋。由于周罗睺先前已损兵折将,元气大伤,大败于高句丽。
史称这次战役中,隋军损失90%。而与隋相比,高句丽军队伤亡很少。杨谅别无办法,只好撤退。此次战役是隋文帝仅有的一次大败仗。为防止隋的再次入侵,婴阳王高元曾上表称“辽东粪土臣元”,隋文帝只好适时罢兵,待之如初。
第二次战争(612年)
1、先期准备
604年,隋炀帝弑父登基后,大修京杭大运河,将中国北部的政治中心与经济发达的南方连接起来。这使得跨地区大规模运送军队成为可能。不过京杭大运河的兴建使得百万计的劳工伤逝性命,劳民伤财对隋的统治也留下祸根。
611年,大运河建成后,隋炀帝开始募集军队。募集的军队被集中在现在的北京。据《隋书》记载,此次募集耗时数年,规模前所未有。一共动员了大约113万的作战部队。负责后勤和运输的人员还要远高于这个数字。整个军队的总数说法不一,估计在300万到500万之间。612年,隋的大军开始出发。由于人数巨大,全部部队用了40天才出发完毕。行进的部队排成的队绵延400公里。
2、辽东之战
598年的战争,高句丽得到一些缓冲地域。由于这些地域不适于和隋这么大规模的军队进行面对面的交锋,高句丽婴阳王将军队撤到辽河一带。天时地利,那年,辽河水比往常提前好久就开始解冻了。当隋炀帝到达的时候,辽河水已全部融化。隋炀帝毫不气馁,下令在辽河上修建了3座桥梁。不过隋炀帝所修的桥还没修到对岸,高句丽就对隋发动了进攻,并有效地击退了隋炀帝的第一次进攻。不过隋炀帝最终将桥修好,隋朝军队过桥包围了高句丽的城堡。
开战前,隋炀帝下令隋将不得擅自作出任何有关作战决定,必须先向他报告后再听从命令。这使得隋朝军队在战场上很被动。隋将在做每个决定的时候都要先派人向隋炀帝请示,这就延误了军情。高句丽的军队也因此有充足的时间进行重整和反击。就这样5个月过去了,隋炀帝没拿下一个高句丽城堡。于是,隋炀帝感到需要改变策略。
3、平壤之战
隋炀帝的新战略是在与高句丽在辽东周旋的同时,派海陆军攻打高句丽的首都平壤。30多万陆军和20万海军构成的先遣队就这样出发了。
4、海上的进攻
隋的海军先于陆军到达了大同江。发现隋的陆军没有到达,婴阳王派出了一小批军队与入侵的隋朝军队交战。简短的交锋后,高句丽的军队假装被击败并向城里撤退。隋朝军队将领以为立功的大好时机已到来,带领10万军队开始攻平壤。
当隋朝军队来到平壤的外围城堡时,发现大门敞开,墙上也无人把守。进入城堡后,发现地上放着钱财和武器。为了谨慎起见,隋朝军队将领下令禁止掠夺。当隋朝军队来到一个寺庙后,遭到了高句丽的伏击。不过高句丽的军队并没有取胜,然后就撤逃了。这次隋朝军队将领真的以为高句丽不行了,于是开始掠夺外围城堡。
正当隋朝军队掠夺之时,一支由几千人组成的高句丽先遣部队对隋朝军队进行了伏击。毫无防备的隋朝军队一时慌了手脚,不知所措,并开始向海边撤退。10万隋朝军队仅有几千人成功退出。第一次单独行动失败后,隋朝军队的将领决定还是等隋朝部队的陆军到达后再围攻平壤。
5、陆上的进攻
然而,隋炀帝派出的陆军在路上也出了问题。在隋国内行军,隋朝军队后勤很有保障。但一旦进入高句丽的国土,隋朝军队的后勤供应就会遭到高句丽的伏击。为了解决这个问题,隋炀帝下令每个士兵都要自己携带食物。不过这大大加重了士兵的负担。许多士兵为了减负,仍下的所带的食物。等隋朝军队到达鸭绿江后,物资已严重缺乏。
在鸭绿江和平壤之间有一条青川江,高句丽大将乙支文德下令在清川江的上游修筑堤坝蓄水。当隋朝军队到达清川江时,江水很浅。于是隋朝军队便涉水过江。正当隋朝军队过江之时,乙支文德下令开闸放水。数千隋朝军队被淹死。乙支文德随后率领高句丽军队向入侵的隋朝军队发动了猛烈的进攻。隋炀帝派出的30多万陆军仅有2700人返回。
第三次战争(613年)
613年,隋炀帝再次对高句丽发动进攻。这次又无功而返。在隋炀帝不在之时,杨素的儿子杨玄感谋反。担心两面受敌,隋炀帝被迫撤退回国镇压杨玄感的起义。
第四次战争(614年)
在平息了杨玄感的起义后,隋炀帝614年又攻高句丽。虽然隋炀帝冲破了高句丽的第一道防线,但由于高句丽的持续伏击和对隋朝军队供给线的切断,隋炀帝始终不能拿下辽河。高句丽婴阳王见势,主动请和以期待结束这场使双方精疲力尽的旷日持久战争。婴阳王将在杨玄感起义造反后逃到高句丽的斛斯政交还给隋炀帝。感到无法战胜高句丽,并担心国内日益增长的内乱。隋炀帝接受了平阳王的建议并撤军。
后续
隋炀帝对高句丽的连年征战使隋朝数百万人丧生,引起隋国内人民对隋炀帝的强烈不满。隋炀帝最后一次攻高句丽后,隋朝全国范围内爆发起义。隋炀帝被迫迁都到江都,但已无力应付民变。
隋朝对高句丽的连年征战不仅使隋朝国力锐减,也使隋炀帝丧失民心。不仅农民起义,而且隋朝的将领也相继叛变。隋都大兴为李渊所据。618年,宇文述的儿子宇文化及大将发动兵变,杀死了隋炀帝。李渊废掉隋帝,隋朝灭亡。