洪武三年(1370年)四月,明太祖朱元璋为确保明王朝的长治久安,想方设法加强皇室本身的力量,其具体的办法就是分封诸子为王。他把宗室二十五人(24个儿子和1个从孙)封为藩王,分驻北部边境和全国各战略要地,想通过他们来屏藩皇室。朱元璋曾说的:“天下之大,必建藩屏,上卫国家,下安生民,今诸子既长,宜各有爵封,分镇诸国。”从全国来看,这些封藩主要有两类:一是腹里,二是边塞要地。受封诸王在自己的封地建立王府,设置官属,地位相当高,公侯大臣进见亲王都得伏而拜谒。
明朝初年,每一个藩王除食粮万石以外,还有军事指挥权。藩王于王府设亲王护卫指挥使司,辖军三护卫。护卫甲士少者3000人,多者1.9万人。九位塞王(辽、宁、燕、谷、代、晋、秦、庆、肃)因有防御蒙古贵族侵扰的重任,所以护卫甲士尤多。北平的皇四子燕王朱棣拥兵10万,大宁的皇十七子宁王朱权“带甲八万,革车六千”。他们在边塞负责筑城屯田、训将练兵、巡视要害、督造军器。晋王、燕王多次出塞征战,打败蒙元残余势力的军队,尤被明太祖重视,军中大将皆受其节制。甚至特诏二王军中小事自断,大事才向朝廷报告。尤其是燕王朱棣,由于功绩卓著,朱元璋令其“节制沿边士马”,地位独尊。
藩王势力的膨胀,势必对中央政权构成威胁。在朱元璋大封诸王的时候,时任平遥县训导的叶伯巨就指出,藩王势力过重,数代之后尾大不掉,到那时再削夺诸藩,恐怕会酿成汉代“七国之乱”、西晋“八王之乱”的悲剧。提醒朱元璋“节其都邑之制,减其卫兵,限其疆土”。朱元璋不但听不进劝告,反而将其下狱囚死。
在分封之中,朱元璋曾规定凡受封诸王必须离开京城,到封地就藩。不允许各亲王之间相互往来,即使入朝,也不能同时前来,必须一王离京,另一王才可启程。朱元璋此举的目的在于避免诸王相互串联,与中央相对抗。所以,诸王就藩,可以说是“生离死别”。但朱元璋的用心良苦,却未能收到预期的后果。
明太祖朱元璋不仅分封诸子为藩王,而且在其成法中有一条是关于“靖难”的。朱元璋当国时,恐权臣篡权,规定藩王有移文中央索取奸臣和举兵清君侧的权利,他在《皇明祖训》中说:“朝无正臣,内有奸逆,必举兵诛讨,以清君侧。”后来的朱棣即以此为理由,指齐泰、黄子澄为奸臣,须加诛讨,并称自己的举动为“靖难”,即靖祸难之意。故而靖难之役中朱棣的口号是“清君侧,靖国难”。
这其中,“靖难”的意思:“靖”指平息,扫平,清除。“靖难”代表平定祸乱,平息战乱,扫平奸臣的意思。不过太祖的成法里面还有一条就是皇帝先召唤藩王,藩王才能起兵,且成功铲除奸臣后要五日之内离京。所以这不过是朱棣想要夺取皇位的一个借口而已。
洪武二十五年(1392年),皇太子朱标病死,明太祖立朱标次子朱允炆为皇太孙。朱允炆因生性“颖慧好学,性至孝”,而深得朱元璋的喜爱,朱元璋称赞他“而诚纯孝,顾不忘我乎。”不过,对于这位“仁柔少断”的皇太孙将来继任帝位,朱元璋并不十分满意,曾一度打算更换太子,后因翰林学士刘三吾的劝谏,才没有这样做。
尽管如此,朱元璋对朱允炆的继位仍放心不下。洪武三十一年(1398年)闰五月,朱元璋病故,庙号太祖,皇太孙朱允炆即位为帝。临终前,朱元璋立下遗诏,“皇太孙允炆仁明孝友,天下归心,宜登大位。内外文武臣僚同心辅政,以安吾民”、“诸王临国中,毋至京师”。
朱允炆即位,是为明惠帝,改元建文。尽管有朱元璋的遗诏,不许诸王“入临、会葬”,但燕王朱棣仍直奔京师(今南京)。朱允炆闻讯后,立刻派人持敕,令朱棣返回北平(今北京),对此朱棣十分不悦。
建文帝即位时,镇守北部边疆的诸王已有很大的权势,宁王朱权“带甲八万,革车六千”。燕王朱棣更握有“节制沿边士马”的重权。朱允炆对这些皇叔们忧心忡忡。建文元年(1399年)正月,朱允炆即位不久,燕王朱棣即遣长史葛诚入朝奏事。朱允炆遂向葛诚密问燕王府之事,葛诚如实禀告,乃派他返回燕王府,作为内应。葛诚回到燕王府,朱棣见他神色不对,心中不免作疑。随即朱棣亲自入朝,他自恃皇叔身份,径直走皇道入宫,登陛不拜。监察御史曾凤韶弹劾其不敬,户部侍郎卓敬也密奏,以燕王“智虑绝人”,建议将他徙封至南昌,但都被朱允炆以“骨肉至亲”,婉言拒绝。朱棣察觉到朝廷对自己怀有贰心,回燕王府后,便托辞患病,以观事态的变化。
藩王势力如此做大,建文帝与兵部尚书齐泰、太常卿黄子澄商量削藩之事。齐泰、黄子澄以诸王权势过大,恐难驾驭为由,力主削藩。在削藩顺序上,齐泰认为应先削实力最强的燕王。但黄子澄反对,认为燕王有功无过,为了争取舆论支持,应该先找有问题的亲王下手。建文帝支持黄子澄,遂先后废除五位亲王。
洪武三十一年(1398年)七月,建文帝削周王朱橚。因周王朱橚是燕王同母兄弟,而朱允炆怕他与燕王沆瀣一气,于是决定先废周王。时周王次子朱有爋告发父亲谋反,于是派曹国公李景隆以备边之名经过开封,将周王全家押回南京,废为庶人,迁往云南蒙化(今昆明以西、大理以南)。
建文元年(1399年)四月,朝廷削齐、湘、代三位亲王,废为庶人。湘王朱柏不堪受辱,为保名节举家自焚;齐王朱榑被软禁在南京;代王朱桂被软禁在封地大同。两个月后,明廷削岷王朱楩,废为庶人,徙漳州。
由于朝廷削藩激化矛盾,藩王与朝廷开始决裂,此时实力最强的燕王就成了真正的众藩之首。而朱允炆与朱棣之间的博弈亦逐渐激化。
洪武三十一年(1398年)十二月,为了提防燕王谋反,朱允炆派工部侍郎张昺为北平布政使,都指挥使谢贵、张信为北平都指挥使。随后又命都督宋忠屯兵驻开平,并调走北平原属燕王管辖的军队。燕王朱棣见到几位藩王先后被削,明白如此下去必无法逃过此劫,遂一边争取时间一边做战争准备。为了争取时间,建文元年(1399年),朱棣先装病,使惠帝放三子回北平;之后由于属下被朝廷处死,遂装疯。但由于王府长史葛诚叛变,密奏朝廷“燕王装病”。朱棣装疯被发觉。而心中早已对父皇册立自己的侄子为太孙而继位有所不满,便立即诱杀了前来执行监视逮捕任务的将臣,于建文元年(1399年)七月起兵反抗明朝中央政府。
燕王遣使入京师金陵奏事,使者被齐泰等审讯,被迫供出燕王的异状,于是朝廷下密旨,令张昺、谢贵逮捕燕王府的官属,张信逮捕燕王本人。但张信与其母亲讨论之后,将此事告知朱棣。于是朱棣和姚广孝等进行举兵的谋划,令张玉、朱能将八百勇士带入燕王府中潜伏,以待变故。张昺、谢贵得到朱允炆密诏后,于建文元年(1399年)七月初四带兵包围了燕王府。朱棣假意将官属全部捆缚,请二人进府查验。二人进府后,朱棣派出府内死士将其擒获,并连同府内叛变的葛诚、卢振一同处决。当日夜里,朱棣攻下北平九门,遂控制北平城。
燕军控制北平后,建文元年(1399年)七月初六,通州主动归附;七月初八,攻破蓟州,遵化、密云归附;七月十一,攻破居庸关;七月十六,攻破怀来,擒杀宋忠等;七月十八,永平府(今河北卢龙县,属秦皇岛市)归附。七月二十七,为防止大宁军队从松亭关偷袭北平,用反间计使松亭关内讧,守将卜万下狱。至此,北平周围全部扫清。燕军兵力增至数万。
燕军攻破怀来后,由于领地相距太近,七月二十四日,谷王朱橞逃离封地宣府(今属张家口,距北京约150公里,距怀来约60公里),奔金陵。八月,齐泰等顾虑辽王、宁王帮助燕王,建议召还京师;辽王从海路返京,而宁王不从,遂削宁王护卫。宋忠失败后,部将陈质退守大同。代王本欲起兵呼应朱棣,被陈质所控制,未果。
建文元年(1399年)七月,朱棣反书至南京,朱允炆祭告太庙,削朱棣宗室属籍,废为庶人。决定起兵讨燕。在真定(今河北正定)设置平燕布政司。
朱棣初起兵时,燕军只据北平一隅之地,势小力弱,朝廷则在各方面都占压倒性优势。所以战争初期,朝廷拟以优势兵力,分进合击,将燕军围歼于北平。朱棣采取内线作战,以部将郭资戍守北平(今北京),迅速即攻取了北平以北的居庸关、怀来、密云和以东的蓟州、遵化、永平(今河北卢龙)等州县,扫平了北平的外围,排除了后顾之忧,便于从容对付朝廷的问罪之师。经过朱元璋大肆杀戮功臣宿将之后,朝廷也无将可用,朱允炆只好起用年近古稀的幸存老将长兴侯耿炳文为大将军,驸马都尉李坚为左副将军,都督宁忠为右副将军,率军13万伐燕,数路并进,号称百万大军,同时传檄山东、河南、山西三省供给军饷。耿炳文率军在八月十三日到达真定,并分兵于河间、鄚州(河北任丘北约30里)、雄县,为犄角之势。在经过观察后,八月十五日,燕军趁中秋夜敌军不备,偷袭雄县;成功后又利用伏击击败了鄚州的援兵,遂攻克鄚州,收编剩余的部队。
耿炳文部将张保来降,告知朱棣耿炳文的部队分驻滹沱河两岸,于是朱棣让他回去告诉耿炳文“雄县、鄚州大败,燕兵将至”,以打击其士气,并使耿炳文合兵一处,便于一举击溃。耿炳文果然将南岸的兵调过河。八月二十四日,燕军到达无极县。从樵夫和南军被俘士兵处得知敌情,于是燕军发动决战。
建文元年(1399年)八月,南军师至河北滹沱河地区。燕王在中秋夜乘南军饮酒作乐之机,突破雄县,尽克南军的先头部队。继而又于滹沱河北岸大败南军的主力部队。耿炳文逃入真定城中,闭门固守。燕军攻城三日不克,还师北平。耿炳文率残部不到十万人在真定坚守不出,燕军攻城三天不克。八月二十九日,燕军返回北平。顾成降燕之后,留在北平协助燕世子朱高炽守城。
建文帝听到耿炳文军败,根据黄子澄的推荐,任曹国公李文忠之子李景隆为大将军,代替耿炳文对燕军作战。又令辽东江阴侯吴高等领兵围攻永平(今河北昌黎西北)。朱棣留下少量兵将坚守北平,自己亲统大军救援永平。
本是纨绔子弟,素不知兵,“寡谋而骄,色厉而馁”。建文元年(1399年)九月,李景隆至山东德州,收集耿炳文的溃散兵将,并调各路军马,共计50万,进抵河间驻扎。当朱棣侦知李景隆军中的部署后,笑着说,兵法有五败,李景隆全犯了,其兵必败无疑,这就是政令不修,上下离心;兵将不适北平霜雪气候,粮草不足;不计险易,深入趋利;求胜心切,刚愎自用,但智信不足,仁勇俱无;所部尽是乌合之众,且不团结。为了引诱南军深入,朱棣决计姚广孝协助世子朱高炽留守北平,自己亲率大军去援救被辽东军进攻的永平,并告诫朱高炽说:“李景隆来,只宜坚守,不能出战。”朱棣还撤去了卢沟桥的守兵。
朱棣这一招果然灵验,李景隆听说朱棣率军赴援永平,就率师于建文元年(1399年)十月直趋北平城下。经过卢沟桥时见无守兵,禁不住欢喜,说:“不守此桥,我看朱棣是无能为力了。”这时朱高炽在北平城内严密部署,拼死守卫。李景隆则号令不严,指挥失当,几次攻城,皆被击退。南军都督瞿能曾率千余精骑,杀入张掖门,但后援不至,只好停止进攻。又因李景隆贪功,要瞿能等待大部队一起进攻,错过了时机。燕军则因此得到喘息,连夜往城 墙上泼水,天冷结冰,待到次日,南军也无法攀城进攻了。吴高怯懦,不敢应战,退保山海关。朱棣解救永平之后,率师直趋大宁(今内蒙古宁城西)。
建文元年(1399年)九月初一,江阴侯吴高率辽东兵攻打永平郡,故朱棣趁李景隆踌躇不决之际,九月十九日前往救援。九月二十五日,朱棣击败吴高,并决定趁势偷袭十七弟宁王朱权的藩地大宁(今内蒙古宁城)以获得其精锐部队朵颜三卫;另一方面利而诱之,将南军引至“空城”北平下。九月二十八日,朱棣率众出师。传信给燕世子朱高炽,令其坚守北平城。
十月初六日,燕军经小路到达大宁城下。朱棣单骑入城(一说击败守将房宽后入城),见宁王朱权,哭诉自己无路可走,向朱权求救,希望能向朝廷上书,谢罪免死。朱权相信并收留了他。在居大宁期间,朱棣令手下吏士入城结交并贿赂大宁的军官等。十月十三日,朱棣提出告辞,朱权在郊外送行;但朱权来到郊外后,伏兵尽起,大宁军纷纷叛变,归附朱棣。于是朱权与宁王妃、宁王世子等一同随朱棣前往北平,而大宁的全部军队(包括其骑兵精锐朵颜三卫)都被朱棣收编。大宁成为空城,朱棣实力大增。
听说燕王朱棣率精锐征大宁,李景隆引军攻北平。南军在郑村坝(今大兴以东二十里)扎营,筑垒同攻北平九门。燕王世子朱高炽坚守。朱高炽遣人夜间偷袭南军大营,获得了一定的喘息时间;南军攻城急时,城中妇女也上城头向下投掷瓦石。
南军唯一一次获胜的机会是都督瞿能攻张掖门(一说彰义门,据《方舆纪要》,彰义门即西直门;存疑),几乎要攻下时,因被李景隆所忌,只得停止。功败垂成。农历十月北平甚是寒冷,于是燕军守城部队夜里汲水浇于城墙上,次日城墙结冰,南军无法攀登。南军因天寒地冻,战斗力骤降,攻势自此受阻。
建文元年(1399年)十月十九日,燕军在会州(今河北省平泉县)整编,分立五军(中、前、左、右、后)。十月二十一日,燕军入松亭关(今河北宽城县西南)。十一月初五日,燕军渡白河(时已结冰,渡河处在今北京顺义区东),并打败李景隆的哨探陈晖部队万余人。当天,与李景隆大军在郑村坝会战。燕军左右冲击,连破南军七营,李景隆大败。当夜,李景隆见战事不利,令郑村坝所有军队轻装撤退。数十万人的辎重全部留给了燕军。但李景隆走得匆忙,没有通知围攻北平城的南军军队,于是燕军轻易击溃北平城下的南军,获得其物资。李景隆率军撤回德州,郑村坝之战结束。此战南军丧师十余万人。
建文元年(1399年)十一月初九日,朱棣回到北平城,因为之前(七月)上书没有回信,再次上书朝廷,陈述齐泰、黄子澄构陷宗藩的罪过。建文帝没有回应。十二月,朱棣用反间计令辽东守将吴高被削爵贬黜,消除东北方向的后顾之忧。
由于李景隆准备等来年(1400年)开春再北上攻燕,朱棣决定攻打山西大同,以使南军疲于奔命。十二月十九日,朱棣出师攻大同。十二月二十四日,燕军抵达广昌,守将杨宗投降。建文二年(1400年)正月初一,燕军抵达蔚州,明军守将王忠、李远投降燕军。二月初二日,燕军攻打大同。由于大同是代王的封地且军事地位极重要,李景隆不得不救援。待李景隆走出紫荆关后,燕军从居庸关返回北平。南军在冰天雪地中白跑一趟,兵力、装备大量损失,士气受到重创。
建文二年(1400年)二月二十八日,李景隆给朱棣写信,请求暂时停战。燕王回信索要齐泰、黄子澄等。一说李景隆自此有二心。除了使南军白跑了一个月外,燕军在本次伐大同时意外遇到了从蒙古来降的军队,收编之。此外,保定府于建文二年(1400年)二月降燕。
李景隆在几个月的时间内一败再败,建文帝撤免了他的大将军职务,建文帝采黄子澄之谋,遣使议和以求缓攻,又任命盛庸为平燕将军,代李景隆统兵。盛庸屯兵德州,以遏燕军南下。
李景隆败退后,燕军围济南。右参政铁铉、盛庸坚守。朱棣射信入城招降,未果。建文二年(1400年)五月十七日,燕军掘开河堤,放水灌城。铁铉见势不妙,决定派千人诈降,诱朱棣进城。次日,朱棣前往济南,走到城门口时,城门预设的铁板落下,但略快了些,只打中了其所乘马的头。朱棣大惊,换马跑回。由于事出意外,断其后路等工作没能成功。朱棣逃回,大怒,围城攻打三个月。
由于济南的军事地位极重要,若取得济南,进可南下攻打,退可画疆自守,故燕军乘新胜之锐气,志在必得。不料攻城不利,朱棣愤怒之下决定使用大炮攻城,城中不支。铁铉见状,在一些木牌上写了“高皇帝神牌”几个字并挂在城头,燕军只得停止炮击。六月,惠帝见济南危急,遣使求和。朱棣不听。七月,平安进军河间,扰乱燕军粮道。朱棣进退不得,八月十六,撤兵回北平。盛庸、铁铉追击,大败燕军,收复德州。济南之战结束。
九月初十,朱允炆升铁铉为山东布政使,参赞军务,不久后升兵部尚书;封盛庸为历城侯,平燕将军,撤换李景隆。都督陈晖、平安为副职。南军重新进到德州、定州(今保定与石家庄之间)、沧州(今河北沧州)。
东昌之败之后,朱棣以此为耻,与道衍和尚姚广孝商议对策。道衍强烈支持朱棣再次出兵。于是于建文三年(1401年)二月初九日,朱棣祭阵亡将士,并脱下袍子烧掉,激励军士。二月十六日,朱棣再次出师。当时盛庸驻兵二十万于山东德州,吴杰、平安驻扎在真定。朱棣决定趁南军两军分隔,先破盛庸一部。三月二十日,燕军探知盛庸在夹河(今河北省衡水市武邑县附近,漳河支流)驻扎,于是驻扎在距对方四十里的地方。
三月二十二日,燕军进兵夹河。盛庸仍结下坚阵,备大量火枪强弩。朱棣利用建文帝严禁伤害燕王之旨,亲自率几个轻骑兵掠过南军阵地侦查。盛庸不敢开枪,只得派出自己的骑兵追赶朱棣,不了了之。侦查后,朱棣率领一万骑兵和五千步兵攻击盛庸军左翼,不能入。此时燕将谭渊望见已经开战,于是主动出兵攻打。盛庸部将庄得死战,会合盛庸军,斩杀谭渊。朱棣、朱能等则趁南军调动产生的混乱,趁暮色向南军后方猛攻,斩杀庄得。盛庸稳住了阵脚,天色已晚,双方罢兵。此战杀伤相当,但燕军损失了大将谭渊。
当夜,朱棣率领十余人在盛庸营地附近露宿;三月二十三日清晨,朱棣发现被南军包围。朱棣再次利用禁杀之旨,引马鸣角,穿过敌军,扬长而去。南军愕然,不敢射箭。朱棣回到营中,鼓励众将“两军相当,将勇者胜”,于是燕军在东北方向,盛庸军在西南方向,再次会战。燕军左右冲击,盛庸坚守,双方互有胜负。战斗打了三四个时辰后,突然刮起了强烈的东北风,尘埃蔽天。南军顶著风沙,根本没法作战;燕军则乘风大呼,纵左右翼横击之,盛庸大败,损失了数万人后,退回德州。吴杰、平安引兵准备会合盛庸,闻庸已败,退回真定。夹河之战结束。夹河之战重新确立了燕军的优势。闰三月初四,建文帝因夹河之败,再次罢免齐泰、黄子澄,谪出京城,暗中令其募兵。
击败盛庸后,朱棣进军真定。考虑到攻城较困难,决定诱敌出战。于是下令军中四出取粮,而用间谍向吴杰等透露此事。吴杰等见状,决定袭击燕军。闰三月初九,两军会于藳城,遂交战。南军列方阵,朱棣则率精锐攻其东北角以破阵。燕将薛禄由于马失足被擒,但夺敌刀斩数人后,夺马逃走。此战大量燕军被南军的火枪和弓弩所伤,朱棣的帅旗被射得像刺猬一样;但是,由于朱允炆的禁杀之旨,朱棣本人反而没事。
次日,两军再次交战。在战斗中突然又刮起了猛烈的大风,南军不能支,大败而去。燕军四面围攻,斩首六万余级。吴杰、平安等逃回真定,坚守不出。朱棣将射成刺猬的军旗送回北平,令世子朱高炽妥善保存,以警示后人。从白沟河、夹河到藳城,燕军三次得大风相助而胜,朱棣认为这是天命所在,非人力所能为。
夹河、藳城之战再次使南军损失惨重,正面战场战事稍缓和。南军改为通过谈判、反间、袭击后方等方式间接作战。击败平安后,燕军南下,先后经过顺德、广平、大名,并驻扎于大名。诸郡县望风而降。
朱棣听说齐泰和黄子澄被贬,上书和谈,表示“奸臣窜逐而其计实行,不敢撤兵”。朱允炆得书,与方孝孺讨论,方孝孺表示可以借此机会遣使回报,拖延时间,并懈怠其军心;同时令辽东等军队攻其后方,以备夹攻。于是(四月)建文帝令大理寺少卿薛嵓去见朱棣,传诏并秘密在军中散布相关消息。薛嵓见朱棣,说“朝廷言殿下旦释甲,暮即旋师。”朱棣表示这连三尺小儿也骗不过。薛嵓无言以对。五月初一,盛庸、吴杰、平安等分兵骚扰燕军饷道。朱棣遣使者进京表示盛庸等不肯罢兵,必有主使。建文帝听从方孝孺的意见,将其下狱(一说诛杀),和谈破裂。朱棣见和谈破裂,决定袭击南军饷道,以使德州南军陷入困境,遂令都指挥李远率兵六千,换穿南军甲胄,从济宁南下;六月十五日,燕军瞒过南军到达沛县,成功焚烧大量南军粮船,河中鱼鳖尽死。南军损失粮食数百万石,京师大震,德州陷入窘境。
七月,燕军进攻彰德,林县投降。七月初十,平安自真定趁虚攻北平,扰其耕牧。朱高炽固守。朱棣分兵回援;九月十八日,平安与战不利,退回真定。由于河北战事不利,方孝孺想出了反间计,利用朱高炽(长子)和朱高煦(次子)的矛盾,先写一封信给守北平的高炽,令其归顺朝廷,许以燕王之位;然后派人告诉朱棣和高煦(随军)世子密通朝廷,以使燕军北还。但朱高炽得到信后,根本没有拆开,将朝廷使者连人带信一起送往朱棣处。反间计失败。七月十五日,盛庸令大同守将房昭入紫荆关威胁保定,据易州西水寨以窥北平。朱棣见状,只得回兵救援。朱棣分兵守保定,并包围房昭的山寨。十月初二,燕军与真定援兵和房昭军决战,朱棣令勇士悄悄登山,在敌后大张旗帜。南军山寨见状大乱,与真定援兵一齐崩溃。房昭退回大同。十月二十四日,燕军回到北平。之后又击败了袭永平的辽东敌军。
至此,燕军靖难已有两年多。虽然屡战屡胜,但因兵力不足,无法巩固并扩张胜利,往往放弃新取之地;仅能据有北平、保定、永平三个郡。
建文三年(1401年)冬,朱棣决定直接率兵南下,临江一决。道衍亦支持不再与盛庸、平安等纠缠,直趋京师。十二月初二日,燕师复出。十二月十二,到达蠡县(约在保定以南50公里)。建文四年(1402年)正月,先后击败德州的一支分队和平安的部队,于是燕军南下(路线大致位于现京九铁路和京广铁路之间)至馆陶渡河(进山东),并长驱直入。正月十二日,燕军在馆陶渡河;正月十四日,燕军攻陷东阿;正月十五日,再攻陷东平;正月十七日,陷汶上;正月二十七日,陷沛县(今江苏沛县);正月三十日,燕军先头部队到达徐州。
建文帝见燕军再次出动,建文三年(1401年)十二月令驸马都尉梅殷(建文帝的姑父,顾命大臣)任总兵官,镇守淮安。建文四年(1402年)正月初一,建文帝将迁往蒙化的朱橚(废周王)召回南京。命魏国公徐辉祖率兵援山东。
建文四年(1402年)二月初一,南军将领何福、平安、陈晖进兵济宁,盛庸进兵淮上。朱棣派兵袭击南军饷道后,二月二十一日,燕军击败徐州的出战军队,徐州自此闭城死守。
徐州坚守不出,朱棣遂不再理会,继续南下。三月初一,燕军进逼安徽宿州。三月初九,抵达涡河(今安徽蚌埠市怀远县以北)。平安见到燕军一路南下,带兵来追;但三月十四日在淝河中了朱棣所设的伏兵,只得退回宿州。三月二十三日,朱棣遣将断徐州饷道,铁铉等率兵围攻,互有胜负。四月十四日,燕军进达睢水之小河,搭浮桥。次日,平安、何福领军夺桥,双方隔河僵持。数日后,南军粮尽,朱棣决定偷袭。半夜,渡河绕至敌后;但徐辉祖援兵正好赶到,四月二十二日,双方战于齐眉山(灵壁县西南三十里),南军大胜,斩燕将李斌。
南军再次获得胜利,再加上暑热,燕军陷入窘境。四月二十三日,燕军众将要求北返,择地休整,朱棣不同意,说“欲渡河者左,不欲者右。”大部份人站于左侧,朱棣怒。朱能这时强力支持朱棣,表示“汉高祖十战九不胜,卒有天下”,坚定了燕军坚持的决心。这时,朝廷讹传燕军已兵败,京师不可无良将,遂召回徐辉祖。四月二十五日,考虑到在河边不易防守,何福移营,与平安在灵壁(一作灵璧)深沟高垒作长远之计。由于粮道被燕军阻碍,平安亲自率兵六万护卫粮草。四月二十七日,朱棣率精锐袭击平安,将其一分为二;何福全军出动救援,朱高煦也率伏兵出现,何福败走。
南军缺粮,何福与平安决定次日(二十九日)突围而出,在淮河取得给养,号令为三声炮响;次日,燕军攻打灵壁墙垒,进攻信号正巧也是三声炮响。于是南军以为是己方号炮,纷纷夺路而逃;燕军趁势进攻,南军全军覆没。灵壁之战就此意外结束。此战燕军生擒了陈晖、平安、马溥、徐真、孙成等三十七员敌将,四名内官(宦官),一百五十员朝廷大臣,获马二万余匹,降者不计其数。只有何福单骑逃走。灵壁之战彻底击溃了南军主力,此后燕军在长江以北再也没有遇到像样的抵抗。一千六百年前决定楚汉之争胜败的垓下之战就发生在灵壁附近,可谓历史的巧合。
按照齐、黄的策划,曾令辽东派兵南下欲与铁铉会师济南,但五月初一在直沽被燕军击溃。
灵璧之战后,燕军向东南方向直线前进。五月初七下泗州,朱棣谒祖陵。盛庸在淮河设下防线阻碍燕军渡河,朱棣在尝试取道淮安、凤阳受阻后,遣朱能、丘福率士兵数百人绕道上游乘渔船渡河,五月初九从后方突袭盛庸,盛庸败走。燕军遂克盱眙。五月十一日,燕军向扬州方向前进,五月十七日,到达天长(扬州西北50公里)。守扬州的监察御史王彬本想抵抗,但属下反叛,趁其沐浴时绑缚之。五月十八日,扬州不战而降,随后高邮归降。
五月二十二日,朱允炆遣庆成郡主(朱元璋的侄女、朱棣的堂姐)与朱棣谈判,表示愿意割地。朱棣说“此奸臣欲姑缓我,以俟远方之兵耳。”郡主无言以对,遂返。六月初一日,燕军准备从浦子口渡江,但遇到了盛庸最后的抵抗。燕军战不利,朱棣打算议和北还。此时朱高煦引兵来援,朱棣非常高兴,说“努力罢!世子常常生病啊。”暗示朱高煦有机会取得储君宝座,于是朱高煦大受鼓舞,率众殊死战,击败盛庸。随后中央军的一支水军部队降燕,燕军遂于六月初三日自瓜洲渡江,并再次击败退守此地的盛庸。六月初六日,燕军至镇江,守将率城投降。
六月初八,燕军驻扎于龙潭(距京师金陵东约30公里),朝廷大震。朱允炆徘徊殿间,召方孝孺问计。有人提议逃往内地以图兴复,方孝孺表示城中尚有二十万兵,应坚守待援;即使真战败,国君为社稷而死,是理所应当的。可以再派大臣、在京诸王前往谈判以拖延时间。于是六月初九,派李景隆、茹瑺等见朱棣,再次谈判;朱棣表示割地无名,只要奸臣。六月初十,遣谷王朱橞(建文元年逃回京城)、安王朱楹等第三次前往谈判,无果。六月十二日,外出募兵的大臣们仍未返回,朱允炆只得派在京诸王和武臣们守卫各门。时左都督徐增寿(徐达子,辉祖弟)谋内应,被一群文官围殴。次日(1402年7月13日),燕军抵金陵。徐增寿作内应,事败,被朱允炆亲自诛杀于左顺门。守卫金川门(位于南京城西北面)的朱橞和李景隆望见朱棣麾盖,开门迎降。
燕王进入京城,文武百官纷纷跪迎道旁,在群臣的拥戴下即皇帝位,是为明成祖,年号永乐。历时四年的“靖难之役”以燕王朱棣的胜利而告终。
建文四年(1402年)六月十三,燕军抵金陵。徐增寿作内应,事败,被朱允炆亲自诛杀于左顺门。守卫金川门(位于南京城西北面)的朱橞和李景隆望见朱棣麾盖,开门迎降,是为金川门之变。燕军攻入金陵,江山易主。靖难之役结束。战争虽结束,与此相关的历史却在发展。燕王进京后,宫中起火,建文帝下落不明。有的说建文帝于宫中自焚而死,或云建文帝由地道出亡,落发为僧,云游天下,传说他于正统朝入居宫中,寿年而终;又有一说建文帝逃至东南亚,郑和下西洋的其中一个目的就是寻找建文帝。建文帝的真正下落已不可确考,成为明史上的一大悬案。
朱棣称帝后,建文四年(1402年)六月十八日,恢复了周王朱橚、齐王朱榑的爵位。随后恢复代王朱桂、岷王朱楩的爵位。永乐元年(1403年)正月,明成祖令周、齐、代、岷四王归藩。六月二十六日,成祖取消建文帝之父朱标的兴宗庙号,重新称懿文太子;七月十二日,成祖将朱允炆的三个弟弟由亲王降为郡王;十一月将朱标之子朱允熥、朱允熞废为庶人,囚禁在老家凤阳。
朱棣因为反对建文帝削藩而起兵,为了争取诸王拥戴,还改变祖制给予宗室更高的品级。如按照洪武年间规定,镇国将军(郡王之子)为三品,辅国将军四品,奉国将军五品,镇国中尉六品,辅国中尉七品,奉国中尉八品。而成祖“遂加镇国将军从一品,辅国将军从二品,奉国将军从三品,镇国中尉从四品,辅国中尉从五品,奉国中尉从六品”。
然而由于朱棣自己是武装夺权的,为了保证中央政权稳固,他即位后先将诸边塞王改封于内地,然后逐渐解除诸王的兵权:永乐元年(1403年)削代王护卫及官属;永乐四年(1406年)削齐王护卫及官属,不久废为庶人;永乐六年(1408年)削岷王护卫及官属;永乐十年(1412年)削辽王护卫;永乐十五年(1417年)废谷王为庶人;永乐十九年(1419年)周王见势不妙,主动献还护卫。洪武朝带兵的十三位亲王,永乐朝削去了六个护卫。与此同时,大封靖难功臣,将大批有经验的武臣保留下来,加强中央政权,从根本上改变了中央和诸藩的军事力量对比。
虽然朱棣实现了朱允炆当年的目的,但只解决了眼前的问题,并没有改变祖制;其子汉王朱高煦和赵王朱高燧仍然设立了三护卫。宣德元年(1426年),朱高煦叛乱,再次证明亲王典兵不是办法。亲征平定叛乱后,明宣宗利用其威望,迫使绝大部份藩王交出了护卫,并从各个方面对宗室加以控制。此后,宗室与中央的矛盾逐渐由军事上对政权的威胁转变为大量增加的俸禄对中央财政的压力。
为了更有效率地处理国务,建文四年(1402年)八月初一,朱棣令解缙、黄淮入直文渊阁,预机务。随后扩充内阁至七人。从此内阁开始在明朝政治中发挥越来越重要的作用,甚至清朝仍沿用此制度。
另一方面,由于朱棣是造反称帝的,对大臣有所猜忌,故恢复了洪武年间废除的锦衣卫,重新开始实施明朝的特务统治。随后,永乐十八年(1420年),朱棣又设立了东厂,令亲信太监掌权,加强特务统治的同时提高了宦官的地位。有明一代,特务统治几乎贯穿始终,成为一大特点。
由于靖难之役时,京中宦官提供的情报帮助成祖击败惠帝,成祖即位后便改变太祖以来禁止宦官干政的政策,开始重用宦官。一方面,明朝出现了郑和等著名的优秀宦官,下西洋宣扬国威;另一方面,由于司礼监、东厂等宦官掌权的部门地位提高,且地方镇守、监督采办等重要工作皆由宦官担任(不全为朱棣设置),埋下了日后宦官祸国的种子。
由于洪武年间,北方的防务多由几位边王(如朱棣、朱权)负责,而靖难后朱棣徙诸边王于内地,导致华北防务空虚;又由于有唐朝之守外虚内、宋朝之守内虚外的教训,故在军事上,定都金陵(南京)、遥控将领守卫边界的风险很大;“天子守国门”则可以解决这一问题。另一方面,由于南京的建文帝影响较大,在政治上考虑,作为朱棣大本营的北平更加适合作为帝都。故考虑各种因素后,朱棣决定迁都北京。
永乐元年(1403年)二月,朱棣改北平为北京,名顺天府(与元朝大都区别);随后迁徙各地富民于北京。称北京为行在。永乐年间,迁都北京的准备一直在进行,如建北京城、建宫殿、疏通漕运等;直到永乐十八年(1420年),北京皇宫(即紫禁城,故宫)和北京城建成,遂下令迁都,以南京作为留都。
朱棣在靖难初始时曾将大宁的全部军力(包括朵颜三卫)纳入麾下,朵颜三卫在后续作战中起到了重要作用;故朱棣称帝后,将宁王封于南昌,永乐元年(1403年)三月把大宁封赏给朵颜三卫作酬劳。
大宁位于辽蒙冀三省交界处,辽东—蓟州—宣府弓形的中心,军事地位相当重要;洪武十三年(1380年)收复,并建立卫所,至此废除。大宁可以作为辽东、蓟州、宣府等地的防卫前哨,并影响其防卫效果;失去大宁,从关内到辽东就只能走山海关过锦州。此后(尤其是土木之变后),蓟辽的战事不断。割大宁之事,多为后人所诟病。
靖难之役涉及整个华北和华东地区,反复的拉锯战使得淮河以北的社会经济遭到极大的破坏。朱棣登基后,减免了河北、河南、山东等曾为战场的省份及其它省份的赋税,以休养生息。
“靖难之役”是明朝历史上第一场皇帝和藩王之间的内战。这场战争是建文帝朱允炆为了巩固自己的权力、决定削藩而引起的。
“靖难之役”是明朝历史上影响深远的一次政权争夺战,不仅导致了明朝皇位归属的改变,也极大影响了此后二百多年明朝政治、思想的走向。清代大学者、《〈说文解字〉注》的作者段玉裁在《明史十二论》中将“靖难之役”、景泰末年的“夺门之变”以及嘉靖初年的“大礼议”称为影响明朝历史走向的“三大案”。
“靖难之役”以后,开国功臣集团——明朝初年的“太子党”地位急剧下降。南京是开国功臣集团的巢穴,永乐十九年(1421年),朱棣正式把明朝的首都从南京迁往北京,更加削弱了开国功臣的影响力。伴随着开国功臣集团地位的下降,靖难功臣的影响力迅速攀升,英国公张家成了此后明朝政坛的不倒翁,长期处于最高统治集团之列。