由于明军在地里埋了不少土地雷,燕兵人马被炸死炸伤不少。双方夜深休息时,燕王朱棣仅率三骑殿后,中途迷路,最后趴在地上寻摸好久,找到河岸,才分辩出东西南北,磕磕撞撞回到营中。
回营后,朱棣令张玉将中军,朱能将左军,陈亨将右军,共集全部马步军十余万,在黎明时分又向明军列阵而来。
明将瞿能得胜心切,率其子弟兵纵马直荡燕将房宽军阵。明前锋将平安也在旁边掩护,荡破房宽阵列,擒斩数百燕兵。
张玉等燕将见房宽败北,皆面有惧色。朱棣不为所动,鼓励说:“胜负常事耳!彼兵虽众,不过日中,保为诸君破之。”言毕,朱棣亲率精锐骑兵数千突入明军大阵,张玉与朱棣儿子朱高煦挥军齐进。
明军和燕兵举枪挥刀,马步混战一起。双方大战百余合,死伤惨重。朱棣所骑马多中流矢,换马就换了三次。他身边所带箭矢,也射光了三筒。最后,这位燕王只能提剑奋击,最后拼得剑刃残缺,所骑马又被河堤绊倒,差点被明将瞿能一枪刺死。惶急之下,朱棣奔逃到堤岸高处,挥鞭向堤下招唤,佯装下面有自己的埋伏人马。
李景隆远远望见,怕遭埋伏,忙发号明军退后。朱棣换乘新马,又率兵转身冲入阵内击杀。
明将平安武艺高强,在阵中往来驰突,专捡燕将砍杀。不久,平安即斩燕将陈亨于阵,又砍断燕将徐忠的几个手指。朱高煦见事急,忙率精骑数千冲入阵中,与明军团团相杀,交缠在一起。此时,朱棣本人已经疲劳至极,只是凭着意志力坚持不下。
战至正午,明将瞿能又率守兵重新冲阵,口中大呼“灭燕”,斩杀燕兵数百。关键时刻,忽然一阵大风吹来,明军中最显眼的师旗忽然被吹折,古人迷信,南军相视色动,许多人心中不由得惊惶失措。朱棣见状,师骑兵从侧翼突入明军阵中,驰击砍杀,与朱高煦合兵,混乱中竟把已经战至力竭的瞿能父子皆斩杀于阵。明将平安与朱能交阵,也被打败,兜马回走。于是,明军列阵大崩,奔走逃跑之声如雷。
燕军乘风纵火,烧毁明军营垒。见大势已去,李景隆等人各自逃命,明军被杀及掉入河中淹死的有十多万人。
燕军一直追到旧战场月样桥,明军又被杀被淹死数万人,横尸百余里。