409年——414年刘裕北伐灭南燕,收复山东。卢循进攻建康兵败亡身,晋军广州。晋军西征收复益州。
在东晋内乱期间,与东晋接壤的北方胡国趁机蚕食东晋的领土。
后秦连下东晋南乡(河南南阳浙川县南)、顺阳(河南南阳浙川县东南)、新野(河南南阳新野县)、舞阴(河南驻马店泌阳县西北)等十二郡。
刘裕灭掉桓玄后派人去后秦讲和,要求后秦归还十二郡。
后秦在西线面临南凉北凉的压力,在东线面临北魏的压力,不愿再招惹东晋。刘裕以寡击众打败了桓玄显示出极强的战斗力。后秦皇帝姚兴对刘裕多有敬畏。姚兴同意与东晋化敌为友,归还了新占领的十二郡。
刘裕随后派兵西征,去收复被谯纵占领的巴蜀。
不幸的是,西征军刚攻入巴蜀便发生兵变。西征军的参军杨承祖杀了主将司马荣期,占据巴郡,自封巴郡刺史。第一次西征无疾而终。
刘裕只得组织部队再次西征。西征军杀入巴郡杀死杨承祖。西征军收复巴郡后继续西征,打到距成都还有五百里的地方遇到谯纵军队的顽强抵抗。谯纵军凭借险要的地势阻击晋军。晋军大战六十天不能攻克。军中流行瘟疫,病死的人超过了一半。这仗没法再打下去了,西征军只能撤回。第二次西征又失败了。
两战不利,损兵折将,劳民伤财,刘裕脸上无光。他决定北伐南燕,将功抵过。
南燕趁东晋内乱已经打到淮北,威胁到东晋核心地区。不久前,南燕攻陷了东晋的宿豫(江苏宿迁),劫掠数千人而去。
409年,刘裕亲率大军出杀奔山东。
南燕皇帝慕容德死了,他的侄子慕容超继位。慕容超非常自信南燕军铁甲骑兵的实力。他得知刘裕出兵后,没有派兵凭险据守而是任敌深入。他在临朐(山东潍坊临朐县)城外选了一处平原,集结重兵静候晋军的到来。他相信这里将是晋军的坟场。五万鲜卑铁蹄将会把晋军步兵碾为齑粉。
晋军隆隆开近。步骑混合方阵的外围是4000辆首尾衔接的战车。
鲜卑铁骑如潮水般冲杀过来。晋军战车如防波提一般将敌人挡在外面。战车上的弓箭手和长矛兵远攻近守使敌人不得近身。偶尔有冲过战车阵的敌兵也被阵内的步兵砍翻在地。
鲜卑人死伤惨重,攻势渐渐疲软下来。这时他们突然发现身后的城头上遍插晋军的旗帜。
原来,晋军料定鲜卑注意力全在城外,城内守军必然不多并且防备松懈,派了一支奇兵悄悄迂回到城后一举攻入。
坐镇临朐指挥的慕容超从城中狼狈逃出,身后紧追不舍的是晋军的士兵。
鲜卑人军心大乱,无心再战,如退潮一般溃败下去。晋军乘胜追击,扫荡残敌。
慕容超逃回都城广固(山东青州)。晋军随踵而至,将广固团团围住。
频临灭亡的南燕向后秦求援。后秦叫人给刘裕带话,告诉刘裕马上撤兵,否则将派十万大军攻打晋军。
刘裕嗤之以鼻:我本想拿下南燕再打后秦,你要等不及了,尽管放马过来受死!
刘裕部下担心激怒后秦腹背受敌。刘裕说放心吧。他要真想打决不会让我们知道。吠狗不咬,咬狗不吠。
果然,后秦正忙于跟叛将赫连勃勃缠斗根本无暇顾及南燕,所谓对晋宣战不过是虚张声势虚言恫吓而已。
赫连勃勃是来自塞外的匈奴人,因为长相俊美被后秦的一个公爵收为女婿。他不愿久居人下,杀了岳父,夺了他的军队,反叛后秦。他自认为匈奴人是夏启的后裔,宣布建立夏国,史称胡夏。他不立都城,不要根据地,游走于后秦北部地区,频频袭击后秦的城镇。姚兴派兵讨伐,被杀得大败而回。从此后秦北方诸城白天都不敢开城门。
向后秦称臣的南凉趁机反叛后秦。
之前被灭国的西秦收拢部众宣布复国。
后秦后院起火根本无暇顾及南燕。不过姚兴碍于情面,派出一万步骑兵,号称十万,进屯洛阳,扬言将增援南燕。随后姚兴亲自率军去打赫连勃勃,结果大败而回。姚兴急调洛阳军队回援长安。
南燕使者张纲从长安返回,半路上被晋军俘获。刘裕让他坐在楼车上向广固城内喊话,声称后秦被赫连勃勃打败,自身难保,无兵来救南燕。南燕将士闻之变色,士气大跌。出城投降东晋的络绎不绝。
张纲心灵手巧,为晋军设计了很多实用的攻城装备。
次年,晋军对广固发动总攻,终于将广固拿下。慕容超战败被俘。南燕从此灭亡。
灭了南燕,东晋的版图恢复到山东、河南。
刘裕准备乘胜讨伐后秦。这时国内传来消息,广州的卢循趁晋军北伐后防空虚北犯建康。
卢循当年南逃,趁广州兵力薄弱攻下了番禹,杀了百姓数万人。朝廷忙于内乱无暇顾及偏远的广州,只能设法诏安,任命卢循为广州刺史。卢循接受招安也只想获得一个喘息的机会。
刘裕北伐期间,卢循建造了大量适合内河航行的舰船,计划北上长江中上游,然后顺江而下进攻建康。
当年孙恩率军从海上进长江逆流而上进攻建康,因为舰队航行缓慢失去战机。卢循汲取教训,改从上游发起突袭,让刘裕来不及回援。
公元410年,卢循兵分两路,沿湘江和赣江北上。西路军打到长沙。东路军一口气打到豫章(江西南昌)。
朝廷震动,一度打算放弃建康保着皇帝北上投奔刘裕。
所幸刘裕这时已经结束了南燕之战,正在休整部队,准备西征。刘裕得知卢循南犯,立即回军救援。他担心都城有失,轻骑回京安稳人心。建康军民见到刘裕,得知晋军正在南返的路上,很快安定下来。
这时卢循已经攻破长沙打到长江。刘裕命令坐镇姑孰(安徽马鞍山当涂县)水军将军刘毅固守待援,等待大军南返。但是刘毅争功心切,主动出兵迎战卢循,结果受到卢循两路军夹击一败涂地。
卢循两路水军在桑落洲(江西九江北长江小岛)会师,随即顺江直下建康。卢循的水军“战士十余万,舟车百里不绝,楼船高十二丈”。战船布满百里江面,浩浩荡荡。
南返的晋军还没有到达。建康只有几千守军。群臣惊恐不安,建议刘裕赶紧迁都躲避。
刘裕坚决不同意,认为临阵脱逃是对军民士气的极大打击,不用人家打自己就垮了,逃走也不过是多苟延残喘几日而已。
刘裕在建康紧急动员,征招百姓参军守城。
卢循杀到建康,得知刘裕已经回到京城,迟迟不敢发动进攻。卢循是刘裕手下败将,知道刘裕的厉害,畏之如虎。
刘裕利用这个机会加固工事,部署兵力。南返的部队和各地援军源源不断赶到建康。
卢循终于决定发起进攻的时候早已失去战机。
卢循几次进攻建康都没攻下来,士气受挫。他想先拿下荆州有了立脚之地再图建康,于是撤围去打荆州,结果荆州也没打下来。刘裕率军与卢循决战,利用拿手的火攻大败卢循。卢循收拢残兵逃回广州。
卢循回到广州才发现广州已经被晋军占领。原来,刘裕在卢循撤围之后便派出一支军从海路远征番禺,趁卢循倾军而出后防空虚一举端掉了他的老窝。
卢循原本想趁刘裕北伐趁虚而入袭取建康,没想到刘裕以其人之道还治其人之身,趁虚而入攻占了番禺。
卢循率军全力攻打番禺。这时晋军追兵赶到,跟广州守军里应外合杀败卢循。
卢循收集残兵几千人逃往越南。越南那时也是东晋领土。龙编(越南河内市)守军再次把卢循击溃。卢循彻底绝望,自杀身亡。
持续11年之久的五斗米道之乱终于被平定。
刘裕休整军队,扩充水军,也建造了大量十几丈高的楼船。
公元413年,刘裕派兵去收复益州。
刘裕为此战制定了详细的作战计划。因为担心内鬼泄露情报,他把作战计划装进一个匣子里交给西征军的统帅朱龄石,告诉朱龄石进入蜀地之后再打开。
西征军进入蜀地。朱龄石打开匣子拿出作战计划,看到刘裕让他率领主力从外水(岷江)方向发起进攻直取成都,而以老弱部队从内水(涪江)佯攻黄虎(四川省绵阳)。朱龄石立即依计行事。
谯纵中计,派重兵把守内水。晋军从外水直插彭模(四川眉山彭山县南),抢滩登陆杀奔成都。谯纵以为全线失守,弃城而逃。朱龄石兵不血刃就占领了成都。驰援成都的蜀军遇到单身出逃的谯纵气得要死,杀了谯纵四散而走。益州于是被晋军收复。
至此东晋基本恢复了桓温、谢安时代的地盘。国内结束内乱恢复了安定。