延和元年(元嘉九年,公元432年)五月,在拓跋焘发布“偃武修文”诏书仅仅八个月后,他就决定再次发动战争了,这一次,他将战争引向了北燕。
做好进攻准备之后,六月十七日,拓跋焘率军从平城出发,正式发起了讨伐北燕的战争。他将年仅五岁的太子拓跋晃留在京师;任命尚书左仆射安原、建宁王拓拔崇等人驻屯在北方边境,以防备柔然的袭击;另外,他还派遣散骑常侍南下刘宋,进一步巩固与刘宋刚刚恢复的和平关系。
七月十七日,拓跋焘率领的魏军进抵濡水流域,在此,他命令安东将军奚斤征发幽州百姓和密云境内的丁零部众共计一万多人,运送攻城器械,从卢龙道北上,与主力部队在和龙”城下会师。拓跋焘进入北燕国境后,北燕第三任皇帝——昭成帝冯弘派遣侍御史崔聘带着牛肉美酒前来慰问。七月二十七日,拓跋焘进抵和龙城下。
北燕石城太守李崇、建德太守王融等所领的十个郡都投降了魏军。拓跋焘采取了围困平凉的办法,他下令征发三万当地百姓也在和龙城外开挖壕沟,将和龙团团围住。八月,冯弘从城内派出数万人马出战,北魏昌黎公拓跋丘和河间公拓跋济率军迎战,击败了燕军,斩杀上万人。北燕尚书高绍率领上万家固守羌胡固(今地不详),八月七日,拓跋焘亲自率军围攻,九日攻陷该地,将高绍斩杀。他还命令平东将军贺多罗进攻带方,抚军大将军永昌王拓跋健进攻建德,骠骑大将军乐平王拓跋丕进攻冀阳 ,全部攻下。
九月十四日,拓跋焘班师西返,将北燕营丘、成周、辽东”、乐浪”、带方、玄菟“六郡共计三万多家百姓,全部迁往北魏幽州。魏军退去后,北燕尚书郭渊劝说燕王将公主献给拓跋焘,投降北魏。燕王冯弘回答∶“两国结怨很深,即使投降也难免一死,不如坚守以待事态的变化。”
魏军退去后,北燕内讧又起。冯弘的嫡妃王氏生下了长子长乐公冯崇,等到冯弘继位后,又宠爱另一个妃子慕容氏,把慕容氏立为王后,将慕容氏的儿子冯王仁立为太子,把长子冯崇排斥到了肥如。冯崇的两个同母弟弟广平公冯朗(北魏后来的冯太后之父)、乐陵公冯邈私下商量道∶“国家将要灭亡,不论是聪明的,还是愚蠢的,都能看出这一点,可是父王还听信慕容后的谗言,你我兄弟随时都会被害死啊。”于是,二人一起逃往辽西,劝说哥哥向北魏投降,冯崇听从了。正巧,拓跋焘也派给事郎王德前来招降冯崇。十二月十九日,冯崇派弟弟冯邈前往平城,请求献出全郡投降。燕王闻讯,派部将封羽率军将辽西团团围住。
延和二年(元嘉十年,公元433年)一月,拓跋焘派遣永昌王拓跋健率领大军前往辽西,解救冯崇二月一日,他又加封冯崇为都督幽州平州东夷诸军事、车骑大将军、幽州平州牧、辽西王,录其国尚书事,食邑辽西十郡,允许他可以直接任命国内的尚书、刺史、征虏将军以下的官员。
六月,拓跋健与尚书左仆射安原都督各军进攻和龙,另外派遣将军楼勃率领五千骑兵,进攻封羽驻守的凡城,封羽投降,魏军掳掠北燕三千多户居民后撤军。八月,冯崇上书拓跋焘请求说服自己的父亲投降,但拓跋焘没有答应。北燕昭成帝太兴四年(元嘉十一年,公元434年)一月四日,自知不敌的冯弘只好向北魏派出使者,请求和解,却遭到了拓跋焘的拒绝。闰三月十八日,燕王再次派遣尚书高颗前往北魏,正式表示臣服,向北魏谢罪,并表示愿意将最小的女儿送给拓跋焘作为妃子,听了这些,拓跋焘才同意了。冯弘将扣押在和龙长达二十四年的北魏使者于简送还,于简回到平城后,拓跋焘专门下诏进行褒奖,将他比作苏武,拜为治书侍御史,赏赐给他一千只羊、一千匹布帛,到太庙向祖先报告,并通告全国。
虽说拓跋焘答应了冯弘,但是,他提出了另外一个附加条件∶要求燕王将燕国太子冯王仁送到平城做人质。想到心爱的儿子将被送到平城,燕王和慕容后是一百个不愿意,一直寻找种种借口,拒不送冯王仁动身。
六月二十日,拓跋焘再次派遣永昌王拓跋健等人率军讨伐燕国,将燕国境内的庄稼收割带回,居民迁走。燕王无奈,又想到投靠江南的刘宋王朝。太兴五年(公元435年)年初,他派遣使者前往建康,表示臣服。宋文帝刘义隆加封其为燕王,江南人将北燕称为黄龙国。除了加封一个虚号之外,刘宋并无太多的表示。三月,燕王只好派遣大将汤烛向北魏纳贡,并解释是因为太子冯王仁一直有病,所以才没有及时送来,请求北魏谅解。但是,这种把戏岂能瞒过拓跋焘?他对冯弘再也不理睬了,并开始部署对燕国发起新的进攻。
看到这次拓跋焘要来真的,冯弘情急之下,赶忙派遣右卫将军孙德到刘宋,请求发兵支援。然而,宋军千里迢迢渡海前往辽西,本身就是一件十分困难的事。冯弘还没有等到宋军,拓跋焘即于六月二十二日下令骠骑大将军乐平王拓跋丕、镇东大将军屈垣等人率领四万骑兵讨伐北燕。
七月二十四日,拓跋丕等人进抵和龙城下,冯弘拿出牛肉、美酒犒劳魏军,并献出三千铠甲,屈垣斥责他没有送上人质,在抢掠了六千北燕男女后撤军。
数年以来,北魏多次讨伐北燕,燕国的国力大为削弱。太常杨峤又劝说冯弘向北魏送上太子,冯弘说∶“我不忍心这么做。如果不幸遭受灭亡,我将东去投靠高句丽,再图恢复。”杨峤回答∶“北魏举天下之力来进攻一隅之地,以臣下的愚见,我们肯定会土崩瓦解。且高句丽本为夷狄,素无信义,即使我们刚去的时候,对我们亲近,终将改变态度。如果不早作决断,以后后悔都来不及了。”但冯弘不从,秘密向高句丽派出尚书阳伊,请求高句丽派军迎接。
太兴六年(元嘉十三年,公元436年)二月六日,冯弘再次派遣使者向北魏进贡,并表示请求送上太子冯王仁去平城当人质,但这次拓跋焘不答应了,相反,他正决定对北燕发动一场灭国之战。十日,拓跋焘向北燕周边的高句丽等邻国派出十多名使者,把将要讨伐北燕的消息向各国作一通报,并要求他们不要支持冯弘。三月二十日,拓跋焘派遣平东将军娥清、安西将军古弼率领一万精锐骑兵讨伐北燕,并命令平州刺史拓跋婴率领辽西各军协同作战。
四月,魏将娥清、古弼率军进攻北燕重镇白狼城,高句丽派遣大将葛卢孟光率领数万军队跟随阳伊前往和龙,迎接燕王,驻扎在和龙以东的临川。北燕尚书令郭生看到民众不愿迁徙,阴谋打开城门响应魏军,但古弼怀疑郭生有诈,不敢进城,而郭生已经在城内进攻燕王冯弘了,燕王招来高句丽之兵从东门入城,与郭生的叛军在皇宫门前激战,郭生被流箭所杀。葛卢孟光入城以后,下令将士脱去身上破烂不堪的衣服,换上北燕武库中的铠甲,拿起北燕武库中的精锐武器,大肆在城中抢劫。
五月五日,冯弘率领和龙城内现存的居民弃城向东转移。在离开和龙之前,他下令将和龙的宫殿焚毁,和龙顿时陷入火海之中,大火烧了整整十天才熄灭。北燕的这支逃亡队伍长达八十里,妇女身穿铠甲居于队伍的中间,外围则由阳伊等人率领北燕的精兵,高句丽的军队则负责断后。古弼的部将高苟子率领骑兵将要发起冲击,古弼却喝得烂醉,拔出佩刀予以制止,致使魏军眼睁睁地看着冯弘被高句丽军接走。北魏将士们空手而归,都埋怨古弼没有下令发起进攻。得知实情后,拓跋焘不禁大怒,下令就地将古弼、娥清逮捕,用囚车将二人送回平城,都降为看门的普通士兵。五月八日,拓跋焘派遣散骑常侍封拨出使高句丽,要求将燕王送还,但遭到了高句丽的拒绝。
虽然冯弘还没有死,但作为一个政治实体,北燕已经灭亡了,北燕从义熙三年(正始元年,公元407年)建立到如今灭亡,共历时三十年。