洪武二十三年(公元1390年)正月朱元璋开始第七次北征,然而这一次北征的主帅人选却很有意思,是朱元璋的两个儿子燕王朱棣和晋王朱棢。此前的几次出征,徐达也好,李文忠、冯胜、蓝玉也罢,不是开国元勋就是百战功臣,而这一次却派了朱元璋两个儿子,虽然他们也曾跟随徐达等人出征过,但终究没有独立作战的经验,难道朱元璋不怕重蹈第二次北征的覆辙吗?一点也不怕。此次出征晋王朱棢从山西出塞,一路上压根没发现蒙古军队,转了几圈,无功而返;燕王朱棣倒是打赢了几场小仗,但也没达成什么战略性目标,总的来说第七次出征收获不大,但朱元璋还是组织了这次北征,因为自从第六次北征彻底打废北元后,朱元璋北征的目的就已经发生了质的变化。
之前几次作战每次都是名将往上怼,然而随着时间的推移,开国老将们在逐渐凋零,到第七次北征的时候,徐达、李文忠等人都已经过世,没有过世的诸如冯胜、蓝玉等人也因为功高震主受到朱元璋的猜忌,虽然现在蒙古已经降级成边患了,但也不能放任不管。功臣信不过,那就得靠自己的儿子了,于是朱元璋自洪武十年(公元1377年)其陆续在边地地区设立镇守边地的藩王,即九大塞王,相比于内地的王爷们,这九位王爷兵强马壮、守备要隘,并且在前几次北征中多有跟随元老名将们出战,学习经验。到了第七次北征,朱元璋终于将身为塞王的晋王和燕王任命为主将,令他们率军出征,其实找不找得到敌人,打不打嬴都不是最重要,能赢最好,退一步说只要不输就是嬴,此次出战的主要目的便是锻炼一下这几个儿子,树立塞王们的军威,使军事统帅权从功臣名将手中转移到明朝宗室手里。