徐达北伐由南向北地统一全国

元朝末年蒙古统治者残暴 , 人民受到空前压迫 。公元1351年 , 元廷征调农民和兵士十几万人治理黄河水患 。“治河”和“变钞”导致红巾军起义爆发 。朱元璋收到儿时伙伴汤和的来信 , 邀请他参加郭子兴的义军 。于是朱元璋毅然投入起义军的队伍中 。后朱元璋南征北战终于平定南方 , 公元1368年朱元璋称帝 , 国号为大明 。
于是乎 , 朱元璋将目光放到了北方 。公元1367年11月 , 朱元璋命徐达为征虏大将军 , 常遇春为副将军 , 率领25万大军进行北伐 。在北伐檄文中提出“驱逐胡虏 , 恢复中华 , 立纲陈纪 , 救济斯民”的口号 。元顺帝此时信任喇嘛僧 , 沉迷于天魔舞与声色欢娱之中 。
十一月初 , 徐达军至下邳 , 命张兴祖率一部军先由徐州北上 , 攻取济宁和东平 。这时 , 王宣、王信父子降而复叛 , 并往莒州募兵 , 企图阻止张兴祖北上 。徐达立即进兵沂州 , 王宣被杀 , 王信逃往山西 。附近峄州、曹州、海州、沭阳、日照、赣榆、沂水等地元军闻风而降 。徐达在沂州稍事停留 , 命韩政扼守黄河 , 自率大军进攻益都 。十一月底 , 元益都守将普颜不花力战不敌 , 遂克益都 。徐达乘胜攻取寿光、临淄、昌乐、高苑等地 。元乐安、长山、新城等地皆相继归附 。
十二月初 , 张兴祖至东平 , 逼走元将冯德 , 追至东阿 , 安山 , 迫使元将陈璧、杜天佑、蒋兴等各率所部归降 , 进而围攻济宁 , 元守将陈秉直接逃走 。十二月上旬 , 徐达带领士兵至济南 , 元将多尔济投降 , 密州、蒲台、邹平的元将 , 亦先后请降 。徐达决定继续向东略地 , 命傅友德进攻莱阳 , 自己带兵返回益都 , 东攻登、莱二州 。元惠宗见山东形势危急 , 命中书右丞相伊苏、太尉知院托和齐、中书平章政事呼琳岱、陕西行省左丞相图噜等进军山东 , 然而诸将都不听从命令 。
公元1368年三月 , 徐达在基本上占领山东之后 , 从济宁进攻汴梁 , 同时派一部分军队经河南永城、归德趋许昌 , 并命邓愈率襄阳、安陆、江陵之兵北攻河南南阳 , 策应北征主力作战 。三月底 , 徐达进抵陈桥 , 元汴梁守将李克彝夜驱军民西遁 , 元将左君弼率所部投降 。徐达进入汴梁后 , 立即率步骑经中湾西攻洛阳 。
四月上旬 , 徐达军自虎牢关进至洛阳塔儿湾 , 元将托音率5万元军在洛水以北列阵 , 被常遇春强行突破 , 退至陕州 。驻守洛阳的元梁王阿哩衮见大势已去 , 率官民出降 。徐达继续挥兵略取嵩、陕、陈、汝诸州 , 并命冯国胜率所部进攻潼关 。由汴梁退守潼关的元将李思齐和张思道 , 听说明军又逼近潼关 , 急忙率领部队西逃 。明军向西连续攻克陇、秦、巩昌、兰州等地 , 进逼临洮 , 李思齐末路穷途 , 只好投降 。徐达命薛显进攻西宁 , 亲率主力进攻庆阳 。
五月初 , 连续攻下安定、会州、靖宁、隆德 , 经萧关前往平凉 , 一方面分兵进驻战略要地延安及泾州 , 另一方面派张涣率骑兵侦察庆阳的动静 。张思道早在明军攻克临洮时 , 便留下弟弟张良臣与部将姚军守庆阳 , 自己则逃往宁夏 , 结果被库库擒获 。张涣派人招降张良臣 , 张良臣得知其兄被库库治罪 , 决定降明 , 但迅即又叛 。徐达下令四面包围庆阳城 , 张良臣恃险顽抗 , 并向塞外的库库求救 。库库为救庆阳 , 兵分三路牵制明军 , 一路攻大同欲下太原 , 一路攻风翔 , 一路攻泾州 。七月中旬 , 库库部将哈南下攻原州 , 致使战局为之大变 。徐达见库库兵势甚猛 , 暂取守势 , 命徐礼守驿马关、叶石真守彭原、韦正守郐州、傅友德、薛显守灵州 , 控扼各处要害 。不久 , 哈布攻下泾州 , 致使徐达大军腹背受敌 , 幸得冯国胜自驿马关引兵来救 , 才将哈札儿击退 。八月上旬 , 张良臣在庆阳粮饷已尽 , 外援无望 , 其部将开城投降 。数日后 , 库库派往大同和凤翔方面的军队 , 亦被明军击溃 。