明成祖朱棣起兵夺取其侄儿朱允炆江山之事实,早已获得了一致认同,没有丝毫疑义,也难以再激起普通群众的兴趣。然而,明成祖赐死宫女之事,却鲜有人知,赐死宫女的原因,知之者更是少之又少。
复战于真定(今河北正定),又大败。朱允炆遂以勋戚李景隆代耿炳文,调兵五十万伐燕,筑垒九门,围攻北平。
十月,朱棣亲自率精骑袭大宁,执宁王朱权及其妃妾世子,得其部朵颜三卫骑兵(相当于雇佣兵,均为蒙古骑兵,战斗力极强),兵力骤增。
朱棣
李景隆乘虚攻北平,但不能克(朱棣长子朱高炽镇守,用冰冻住城墙,使李景隆无法破城)。燕王师自大宁返回后,于郑灞大破李景隆军。
朱允炆被迫罢兵部尚书齐泰、太常寺卿黄子澄职,以缓燕师。建文二年四月,双方又战于白沟河,李景隆再次战败,燕师乘胜围攻济南。
山东参政铁铉固守济南,以逸待劳,燕师久攻不下,败还。九月,朝廷升铉为山东市政使,改命盛庸代李景隆。
十二月,盛庸率师与燕军会战于东昌(今山东聊城),燕师大败,主将张玉战死。建文帝于三年复齐、黄职。
二月,燕师再度南下。三月,败盛庸于滹沱河,再败吴杰等于藁城。朱允炆以放逐齐、黄为名,使其外出募师勤王。
当时,燕师虽多胜,但损失颇重,而朝廷军源颇广,燕军于河北、山东一带所攻下的城邑,兵回后又为朝廷兵所据。
同年底,有内臣自京师告密,朱棣知南京空虚可图,决计改变战略,于四年正月率师南下。四月,连破何福、平安师,五月克泗州、扬州。
建文帝遣庆成郡主至燕师,乞割地求和,燕王不许。六月,江防都督陈瑄以舟师降燕,燕师渡江,下镇江,直逼南京。谷王朱橞与李景隆开金川门降燕,南京城陷,宫中火起,朱允炆不知所终。
朱棣攻下南京后,在拒绝了他的支持者们反复几天的劝进之后,于1402年7月17日即皇帝位,但不是继承朱允炆的帝位,而是继承明太祖朱元璋的帝位(废除建文年号,建文四年改称洪武三十五年)。