南燕袭击东晋,由刘裕率军抵抗。刘裕的战略胜于燕军一筹,同时慕容超还愚笨无能,尽管刘裕围攻八个月,南燕还是灭亡了。
东晋刘裕鉴于南燕于二月两次入袭东晋北部边境,为进一步提高自己的权威,便于义熙五年(公元409年)三月,上表晋安帝请求兴师击灭南燕。朝中大臣廷议均认为不可,唯有左仆射孟昶、车骑司马谢裕、参军藏熹极力赞成北伐。刘裕决心坚定,并谋划以水军、车兵、步兵、骑兵联合作战,一举击败燕军。
南燕在得知东晋大军来攻之前,桂林王太尉慕容镇等极力主张先击北魏,以雪国耻;但南燕主慕容超和征虏将军公孙五楼则主张南下袭晋。慕容超主张放纵敌人越过大岘山,再行歼灭。太尉桂林王慕容镇也劝谏,不宜纵敌入岘,自贻窘逼。阻守大岘,才是上策。慕容超仍不听从。
六月十二日,刘裕军至东莞。此时,慕容超派公孙五楼、辅国将军贺赖卢、左将军段晖率步骑5万,屯于临朐,当听到晋军已越过大岘山,又亲率步骑兵5万增援临朐。临朐在大岘山的西北,为广固南面的屏障,距城西40里有巨蔑水。慕容超遂令公孙五楼进据巨蔑水,但晋军前锋龙骧将军孟龙符也已到达巨蔑水边。于是,双方展开了激烈的争夺战,南燕军被晋军击败退走。
晋军占据了巨蔑水后,刘裕以兵车4000乘分为左右两翼,双车并行,继续前进。当晋军进至临朐城南,距城只剩数里,慕容超突然以万余骑兵前后夹击晋军。
六月十九日,晋军攻占了广固外城,收集部众退守保内城。刘裕军筑长围,高3丈,并挖堑3重,以做久困之计。同时,广泛招抚投降的燕军吏,选贤任能,华夷均甚喜悦,并利用齐地的粮食补给军队,停止了从南方的运送,使晋军更加主动。
慕容超被困,形势危急,便赦免了其桂林王慕容镇,并决定派尚书郎张纲向后秦求救。司徒乐浪王慕容惠则认为,晋军乘胜,气势百倍,我以败军之卒出击,将难以取胜。秦虽与大夏交战,但不足为虑。且秦“与我分据中原,势如唇齿,安得不来相救!但不遣大臣,则不能得重兵,尚书令韩范为燕、秦所重,宜遣乞师。”慕容超便派韩范前往。
七月,南燕尚书垣尊、京兆太守垣苗越城而出,投降于晋军。随即向刘裕建议说,张纲善制攻城器械,如若擒获张纲,广固必能攻拔。不久,张纲被晋太山太守申宣俘获,送至刘裕军营。北方地区的民众每天背负粮食前来归附刘裕军的不下1000多人,燕右仆射张华、中丞封恺均为刘裕所俘。慕容超见大势危急,便向晋请求以割让大岘以南为条件,称臣于晋,遭刘裕拒绝。
后秦主姚兴所派使者至刘裕军营,对刘裕威吓说:“慕容氏相与邻好,今晋攻之急,秦已遣铁骑10万屯洛阳;晋军不还,当长驱而进。”刘裕听后,正告后秦使者说,你回去告诉姚兴,我灭燕之后,休兵3年,即夺取洛阳、关中地区。如若你们愿意现在前来送死,便请速来!
刘裕参军刘穆之听到刘裕如此答复后秦使者,深为不解。认为,这非但不能威吓敌人,相反会将其激怒,一旦广固不能攻拔,后秦大军又至,将造成严重后果。南燕人素来敬重韩范,刘裕便让他绕城宣示燕人,他已降晋,燕军更加沮丧。
十月,张纲为刘裕军所造攻城器具完毕,“设备奇巧,飞楼木幔之属,莫不毕备。城上火石弓矢,无所用之”。晋军由于拥有了良好的攻城器械,杀伤燕军日众,加之燕军被困已久,城中粮食将尽,燕军吏纷纷越城降晋。尚书悦寿认为燕“独守穷城,绝望外援。”
虽然将军公孙五楼、贺赖卢曾挖掘地道,率众出城袭击晋兵,但无法破敌,故劝告慕容超降服。但慕容超说:“吾宁奋剑而死,不能衔璧而生!”
义熙六年(公元410年)二月初五,刘裕命率军攻城,悦寿开启城门放入晋军,慕容超率数十骑突围而逃,被晋军生俘,送至建康斩首。至此,刘裕围攻广固8个月之久,才将南燕灭亡。刘裕进入广固城中,欲将城中的男子全部坑杀,将他们的妻女赏给将士,后经韩范劝止,只将燕王公以下3000人处死。