▲明成祖朱棣像
洪武三十一年(1398年)闰五月,太祖驾崩,皇太孙即位,是为建文帝,史称明惠帝,以明年为建文元年。燕王棣赴京奔父丧,但行至淮安,便接到朝廷关于“诸王临国中,毋到京师会葬”的“遗诏”。棣甚恼火,想必是建文宠臣齐泰、黄子澄等改了诏书,但实情不明,只好暂时返回。
七月初五日,燕王正式誓师,援引《祖训》中“朝无正臣,内有奸逆,必举兵诛讨,以清君侧之恶”条文,以“诛齐泰、黄子澄”为名,起兵靖难。取消了建文年号,仍称洪武三十二年。设置官属,任张玉、朱能、丘福为都指挥佥事。第二天,留郭资辅世子守北平,亲率大军抵达通州,指挥房胜不战而降。用张玉计,攻下了蓟州、遵化,解除后患,然后又向南推进。一场以夺皇位为实质的武装斗争开始了。十六日,燕王认为“居庸险隘,北平之咽喉,我得此,可无北顾忧”。于是挥军攻占居庸,转攻怀来,开平、龙门、上谷、云中守将望风归降。燕王又攻克了永平、克滦河,直趋南下。由于北平多年一直为基地,因此附近州县卫所,一呼百应,士气旺盛,并有鞑靼兵马为后盾,南方宫中太监为内应,朱棣不仅兵精粮足,而且对建文集团内动静虚实了如指掌,加之指挥得当,又有姚广孝等能者相助,出谋划策,因此在斗争中始终处于优势地位。建文集团相反,虽位居正统,兵众粮足,但因建文帝生性怯懦迂腐,缺乏魄力,处事优柔寡断,易信谗言。因此先后任用耿炳文、李景隆分镇真定、河间。结果,耿先大败于真定,困守孤城;李代耿后,虽乘燕军攻大宁之机而围攻北平,但在北平军民合击下又大败,逃回德州。建文无奈,答应罢免齐泰、黄子澄的兵权(实则仍典兵如故),以求罢兵。燕王知诈,不听,继续进攻德州。建文二年(1400年)四月,燕王连续攻下德州、济南,景隆只身走。惟铁铉、盛庸代景隆坚守济南,燕军久攻不下,只好暂回北平。由于守城有功,铁铉升为兵部尚书,盛庸升历城侯。九月,盛庸受命北伐,以副将军吴杰进攻定州、都督徐凯屯驻在沧州,自己固守济南,以逸待劳;而燕王则佯攻辽东,暗渡直沽直捣沧州,破城捉凯,大获全胜。但在东昌大战中,勇将张玉战死,燕王也因有建文诏戒,敌将“莫敢加刃”,几次化险为夷。在这次战役中,幸运的是有朱高煦援救,方转败为胜。