北伐兵团总司令自然是徐达,副司令则是常遇春。1367年农历十一月,徐达的北伐兵团向山东进发,先攻陷了沂州(今山东临沂),然后攻破了元王朝在山东的军事重地益都(今山东青州)。1368年正月,山东战场捷报频传,朱元璋心花怒放,预料到山东已是囊中之物,于是宣布称帝。徐达兵团更是为朱元璋的称帝锦上添花,1368年农历三月初,徐达攻克了元王朝在山东的最后一个据点——东昌,就此宣告山东彻底平定,朱元璋的收复北中国计划的第一阶段圆满结束。
与此同时,朱元璋的大将邓俞进入了河南战场,快速拿下了南阳。徐达兵团也从东边进入了河南,两支大军包围了汴梁。一个月后,汴梁投降。紧接着,徐达兵团直奔洛阳,在洛阳附近与扩廓帖木儿展开了一场空前惨烈的野战,最终取得了胜利,占领了洛阳。
另外一支由大将冯胜率领的兵团绕过洛阳战场,拿下了潼关。至此,朱元璋制订的收复北中国计划的第二阶段胜利结束。朱元璋也许是对接下来的战斗胜券在握,所以拿下河南后,没有立即执行第三阶段进攻北京的计划,反而是去了汴梁,并把汴梁的名字改为“开封”。就在这座崭新的城市中,他和徐达进一步细化了进攻北京的计划。