徐达统领北伐大军攻克元朝大都后,明朝政府基本上已将整个中原、江淮和闽广地区纳入了自己的版图。但是,元顺帝迁居上都后,仍然在古长城以北、河北大部及今之山西、陕西、宁夏、甘肃及云南等地保存有较完整的政权机构,而且军事力量也不容小觑。元丞相纳哈出、扩廓帖木儿均手握重兵,分驻东北和三晋之地;元将李思齐、张思道等称雄关陇;元朝宗室梁王把匝剌瓦尔密独霸云南,自恃险远,桀骜不驯。此外,尚有以明昇为首的夏政权割据四川盆地。因此,在元朝宣告灭亡后,明朝政府统一全国的任务还相当艰巨。作为明朝开国元勋、武将之首的徐达,义不容辞,也是理所当然地率先担负起了最终统一晋冀和关陇地区的重任。
洪武元年(1368年)八月十五日,明太祖因元朝都城已被攻克,命令大将军徐达、副将军常遇春率军攻取山西,同时诏命以御史大夫汤和为偏将军,与平章杨琛一道随从大将军徐达征讨山西。但是,由于诏令自明朝京师传至北平需要时日,加上当时北平及其他在北伐期间刚刚纳入明朝版图的新占领区的善后工作有待完成,所以在攻克元都直到明太祖诏令进军山西以后的一段时间内,徐达一直驻留北平。在此期间,徐达采取了一系列积极措施,以确保北平及其他明朝新占领区的安全,稳定当地的社会秩序,巩固北伐战争的胜利成果,同时为明朝廷即将展开的大规模统一行动,即西征行动做准备。
徐达率部攻克元都后,在遣使赴京告捷的同时,又积极采取措施,加强以大都为中心的新占领区的军事布防,设法巩固和扩大北伐战争的成果。
洪武元年(1368年)八月初三,徐达命令右丞薛显、参政傅友德、平章曹良臣、都督副使顾时等率领精锐骑兵前往大都北边的古北口等隘口巡逻,阻止塞外元朝残兵南下入侵,谨防内地元朝残余北逃,泄露明朝军机等。当天,前时奉元朝廷之命入守大都的元顺德守将吉右丞、胡参政、郑参政被迫从驻地西山来降徐达;前山东乐安逃将俞胜及高参政、张郎中等被徐达部下武德卫军校抓获。
八月初四,徐达派遣蒋府宗往涿州,招抚前广平守将平章周昱。不久,奉命巡视北边的千户陈权在古北口抓获了周昱部下将校及其家属等。初五,徐达令镇抚吴勉代理大都路知府、知印谢秘代理大都路同知之职,与该路元朝旧官“权行发遣公事”,以加强对大都的管理、稳定大都的秩序。初六,徐达遣人前往山东东昌,令平章韩政分兵驻守广平。初八,奉命巡逻的骁骑右卫千户陈谅又在古北口捕获了元将李德明、谢文振、尹野同等39人。初九,徐达命指挥华云龙负责加固大都城垣,以增强大都的防守能力。初十,徐达遣宣武卫杨镇抚率兵出守直沽。十一日,徐达再次派人前往东昌,令平章韩政分兵驻守陵州,并且亲自督修大都城西北城垣。十四日,徐达又命参政傅友德分兵守卫卢沟桥。
在明太祖下令改大都路为北平府的第二天,明太祖一面诏令徐达等进取山西,一面又令徐达留兵三万,设置燕山等六卫,以守卫北平。徐达奉诏后,下令改乐安卫为燕山左卫、济宁卫为燕山右卫、飞熊卫为大兴左卫、淮安卫为大兴右卫、青州卫为永清左卫、徐州卫为永清右卫,并遵照明太祖的吩咐,命都督副使孙兴祖、佥事华云龙率六卫将士驻守北平。孙兴祖领命镇守北平后,“纪律严明”,于是“燕京(即北平)以安”。
八月二十日,为了进一步加固北平城防,徐达又令指挥叶国珍丈量北平南城(即金朝都城旧基),计周长达5328丈。同一天,元翰林学士危素、张以宁、鲁坚等至军门谒见大将军徐达,徐达“以其儒者,礼遇之”。次日,徐达部下千户李某在奉命巡守古北口时,擒获元将扩廓帖木儿派来的间谍余佥院,并将其送交徐达处置。
八月二十四日,徐达部下指挥曹谅等奉命与指挥唐黑塔等联手,围攻裕州泉北寨元军。被困近四个月之久的元守将平章郭云因粮尽援绝,终于抵挡不住,乘夜出逃。曹谅等出兵追赶,生擒元平章郭云及其部将刘祥等,并将其押送给当时正出巡至河南的明太祖处置。第二天,徐达又命指挥薛某率东安州降将左卫帅府副使段英、署丞刘蛮子往东安,征讨尚未归附的元守将哈剌赤。九月初二,指挥薛某等到达东安,一举擒斩了哈剌赤,降服了其部下将士。
八月二十五日,徐达复令指挥张焕丈量故元皇城,计周长1026丈。就在这一天,元大都降将迭里迷失等阴谋发动叛乱,并准备推举元平章哈剌那海为首领之事,被玉田县尹揭发。徐达立即派人搜捕,抓获了首犯迭里迷失、哈剌那海及要犯郎中金刚奴、顺德达鲁花赤金刚宝、员外完者不花、指挥脱帖木儿等,将其全部处以极刑。九月初一,徐达特意将北平“安贞门”改称“安定门”,“建德门”改称“德胜门”,希望北平等地从此社会安定,同时企望儒家的道德观永远能够战胜一切邪恶。
自徐达率部进占河南以后,山西太原就成为了元朝大将、实权派人物扩廓帖木儿的活动据点。自元末兵兴以来,扩廓帖木儿就手握军权,拥兵自重,形成了半独立的地方武装势力。早在洪武元年(1368年)五月初四,正率领北伐大军进兵河南的徐达就曾派部下蒋彦彰持其书信前往太原,主动联络扩廓帖木儿,佯装与之修好,以此稳住扩氏,尽量避免过早与他发生大规模的武装冲突,减轻北伐将士进军的阻力。当月十五日,扩廓帖木儿派尚书蒋也先、参政温某自太原来到河南洛阳,谒见大将军徐达,并以良马3匹、白金2锭作为馈礼。徐达不想接受其礼物,但担心因此引起扩廓帖木儿的怀疑,使自己前功尽弃,给北伐造成不良影响,因此决定以武将的身份接受扩廓帖木儿馈赠的良驹,退还其礼金。第二天,徐达派舍人王铭送蒋也先到明朝京师,将扩廓帖木儿遣使通好等事向明太祖进行了汇报,同时遣来使温参歧回太原,还报扩廓帖木儿。
徐达在率部攻克元都后,便改变了对扩廓帖木儿的斗争策略。八月初四,他派遣元尚书九住前往太原,向扩廓帖木儿通告了北伐大军攻占元都等消息,并劝其率部归降。但是由于扩廓帖木儿在元顺帝北撤后,奉有收复北平之命,更重要的是当时扩廓帖木儿还手握重兵,他本人也是身经百战、威名远扬的一代名将,所以他对于徐达的招降不予理睬。
八月二十日,徐达遵明太祖之命,派右丞薛显、参政傅友德、陆聚等率兵袭击山西大同。九月十二日,参政傅友德等从大同抓回了元乔右丞等34人,还缴获马35匹。
为了表示对徐达所部出征将士的关心和支持,明太祖先在洪武元年(1368年)九月十八日派中使来到北平,犒劳徐达所部将士,过了八天(即二十六日)又诏令中书省运送战衣两万件,赏给徐达部下随征战士。
在派兵远袭大同,骚扰敌军后方,并获取了有关军事情报后,徐达随即调兵遣将,分由北平、河南两道出兵,计划从晋东、晋南同时进逼扩廓帖木儿的巢穴——山西太原。
(1)北平出师。在北伐中原期间及攻克元都之后,徐达所部已攻占了河北部分州县(参见前文)。为了进一步扫清进军山西的障碍,同时确保后方无虞,徐达在洪武元年(1368年)九月二十七日派副将军常遇春、参政傅友德等率兵离开北平,继续攻取河北未下州县。
九月二十八日,常遇春等攻克保定府,留指挥李杰守城。三十日,又攻下了中山府,指挥董勋奉命留守。随后,常遇春等进兵真定,十月初二克其城。元守将平章孙克义撤出,后又来降,常遇春命指挥王金吾领兵驻守真定。二十六日,参政傅友德率兵攻陷距太原约二百里的平定州,驻军该城,等候大军一道进攻太原。
(2)豫北进兵。八月二十六日,明太祖诏令右副将军冯宗异率兵随从大将军徐达进取山西。徐达因此如虎添翼,得以利用冯宗异所部及前不久奉明太祖之命随征山西的汤和、杨璩所部将士,由河南自南向北进攻,开辟第二战场,两军相互呼应,互为犄角,对山西形成了钳形攻势。
十月初二,右副将军冯宗异、偏将军汤和率军进至武陟,道遇怀庆元军巡逻骑兵一百余人,将其一举擒获。第二天,冯宗异等进抵怀庆,元守将平章白琐住等先期弃城逃往泽州,所部官军顺利入城,俘获元军将士800人、马50匹,指挥纪斌等奉命领兵留守。初五,冯宗异挥兵进逼位处太行山脉的碗子城,攻破其关隘,元守军四散奔逃。初六,冯宗异兵至泽州,元平章贺宗哲、张伯颜等率部逃离。冯宗异所部在兵不血刃地取得泽州并留兵戍守城池后,继续向北推进。不久,扩廓帖木儿部将平章韩札儿、毛义等率大批步、骑兵南下,迎击冯宗异部。奉命领兵前驱、自泽州直趋潞州的平章杨璟,参政张斌等闻讯后,立即率部增援。杨璟等行至韩店时,与元军发生激烈的遭遇战,结果失败。初十,冯宗异、汤和继续率部北进,夺取了距太原约四百里的晋南重镇潞州。
在驻留北平、指挥两路兵马进攻山西期间,徐达又继续采取措施安定北平、河北等地社会秩序,并负责收集文物资料、招抚流民等方面的工作。如十月初一,派广武卫镇抚刘聚驻守河间,不久又令其兼掌府事;十一日,派徐州卫镇抚程信领兵驻守雄州,且分兵守卫霸州;三十日,遣平章曹良臣率兵与马指挥等共守通州。同时,他还奉明太祖之命,负责收集元秘书监、国子监和太史院三机构所藏典籍,太常寺遗存法服、祭器等,以及天文仪象、地理户口版籍、应用典故文字方面的资料等。十月十一日,明太祖以攻克元都诏告天下,徐达又奉诏“随处招谕”自元末兵乱以来南方人流居北方“未附州郡”之“愿归乡里者”返乡复业。
经过两个多月的不懈努力,徐达不仅为明朝政府建立起了一个以北平为中心的北方军事防御体系,大大巩固了北伐战争的胜利果实,而且有效地解除了明朝大军西征的后顾之忧,完成了大规模西征的准备工作。
在以北平为中心的军事防御体系开始发挥其防御功能,大规模西征的准备工作就绪后,大将军徐达便正式发动了统一晋、冀及关西地区的大规模西征之役。
洪武元年(1368年)十一月初三,徐达率右丞薛显等,统兵自北平往攻山西。在随后的行动中,徐达还是继续保持他一贯的持重作风,即一面攻城略地,一面重建新占领区的统治秩序。
十一月初四,徐达兵驻保定。次日,徐达派右丞薛显率兵攻克七梁寨,生擒元宣差闾闾、总管高元举等。初十,徐达进至真定,与副将军常遇春所部会师于柳亭。随后,徐达调左丞赵庸守保定,并命其负责收服各处未复山寨,同时令安吉卫指挥赵兴贵往守通州。十四日,顺德方册寨头目大靴李、太子崖寨府判李伯帖木儿、宁晋水寨咸刘二等,都前来投徐达。十六日,徐达又派参随王成驻守赵州,兼掌州事。同一天,右丞薛显在山西石州追及元詹同脱因帖木儿,并大败其所部元军,脱因帖木儿狼狈逃窜。
这时,徐达通过侦察得知元将扩廓帖木儿已奉元顺帝之命,率兵自太原出雁门关,准备取道保安州,经居庸关,进攻北平。徐达认为都督副使孙兴祖所部北平、大兴等六卫将士足以抵御进犯之敌,自己不但无须回援北平,而且可以乘虚捣毁扩廓帖木儿巢穴,进占山西。他对部下将领们说:“王保保率师远出,太原必虚。北平孙都督总六卫之师,足以镇御。我与尔等乘其不备,直抵太原,倾其巢穴,则彼进不得战,退无所依,此兵法所谓‘批亢捣虚’也。若彼还军救太原,则已为我牵制。进退失利,必成擒矣。”众将认为徐达分析得很有道理,都应声回答说“善”,于是徐达加快了进军太原的步伐。
十一月十八日,徐达令指挥韦正留守真定营垒,派右丞薛显、参政傅友德率铁骑三千为前锋,先行巡视平定州。第二天,他亲自统率大军直赴太原。师至井陉,元凤山寨守将李景春遣人来降。
十一月二十一日,徐达率师通过固关,到达山西平定州。右丞薛显奉命攻取乱柳寨,不克而还。当天,徐达又率兵进驻新兴店,副将军常遇春部下巡逻骑兵抓获了元右丞汤和卿。二十三日,师至寿阳县,驻守当地山寨头目郝某来降。徐达命吉右丞守卫寿阳,自己则率军进驻黄次站。在此,徐达抓获了太原派来的元军15名侦察骑兵,并分兵扼守榆次。二十七日,徐达派兵至太原附近巡逻时,又捕获了两名太原元军的侦察骑兵。随后,徐达命令参政傅友德往守平晋,同时暗中派医士王质持其书信前往潞州,督促右副将军冯宗异率部“严师以进”,配合北平之师夹击太原。
扩廓帖木儿行至保安州,听说徐达亲统大军进逼太原,唯恐巢穴失守后,自己进退无依,立即回师迎战,而且来势十分凶猛。副将军常遇春向徐达献计道:“我骑兵虽集,而步兵未至,未可与战。莫若遣精兵夜袭其营,其众可乱,主将可缚也。”徐达觉得他的建议很好,表示赞同。恰在此时,扩廓帖木儿部将豁鼻马暗中派人前来约降,并请充当内应。于是,徐达当机立断,不待右副将军冯宗异等兵至,在十一月二十九日夜间挑选精兵,夜袭扩廓帖木儿营地。当时,扩廓帖木儿正借着烛光坐在营帐中看书,突然发觉部众一片混乱,心知大事不妙,仓促之间不知所措,慌忙中连靴子都来不及穿好,竟然光着一只脚,从营帐后面溜了出去,骑上一匹没有鞍辔的马,仅带18名随从狼狈出逃。次日黎明,豁鼻马派他的儿子向徐达报告了有关情况。徐达率兵进逼太原,扎营城西。豁鼻马率领将校出降,太原告克。常遇春奉命率兵追击扩廓帖木儿,但未能赶上其逃亡的脚步,到忻州后便折返太原。扩廓帖木儿逃至大同,后又出走甘肃。此役,徐达所部计得元军将士四万余人、马四万余匹。
由于太原战役比徐达预期的要顺利得多,所以在太原告克至冯宗异遵命率部至太原与大军会师以前的这段时间内,大将军徐达与右副将军冯宗异曾分别出兵攻占了晋中、晋南众多未下州县。他们的行动虽然看似各自独立,实际上却是紧密相连、相互呼应的。
徐达在入驻山西省城太原后,一面调兵遣将,重点扫荡山西中部未下州县;一面加紧山西地方政权机构的重建工作,成绩十分显著。十二月初四,徐达派遣右丞薛显、参政傅友德率雄武、宁国、横海等卫步骑前往石州,攻击元将贺宗哲等所部元军;委派戴复初、丁玉明、蒋应宗分别代理管州、忻州、崞州政务;命令翁子奇率兵镇守太谷。初六,参政陆聚领命进攻车子等山寨。第二天,风山、成山、帖山三寨守军向陆聚投降。初九,随征山西的徐达部将、驻守保定府指挥李杰在率兵进攻孔山寨时,兵败阵亡。初十,都督副使顾时派部下金指挥将其在崞州抓获的前山东沂州逃将王信及在忻州抓获的王信叔父王仁等,共计48人,连同缴获的印章2颗、马79匹、骆驼2只,一并送交徐达。
十二月十三日,徐达派常文显、马良等招抚忻、崞二州山寨,何文质招抚太和岭山寨。不久,榆次大窑寨头目郝兴来降,徐达趁机派兵驻守石岭、天门二关。十四日,参政陆聚又率兵攻占了固关山寨,控制了由山西进入河北的主要通道。十七日,指挥周房奉命率兵攻取榆次,以打开太原至潞州的通道,同时千户张允领命前往灵石县,征收大军所需粮饷,并收服附近未降山寨。同一天,参政陆聚所部攻克了半坡寨。十八日,指挥曹崇、周贤、王约奉命率兵前往介休、平遥一带,镇压红莲沟“山寇”。十九日,阳曲皮皮等十寨头目全部率部向徐达投降,徐达令他们全部回乡“复业”。二十二日,徐达又遣指挥叶国珍率兵攻克了韩村寨。二十六日,指挥周房率部攻克榆次等处山寨,并派人向徐达报捷。
洪武二年(1369年)正月初二,红莲沟“山寇”被镇压。同一天,徐达派指挥潘敬率兵三千,攻打管州大王川;遣指挥韩温率指挥常守道等兵,再次讨伐乱柳寨;委任乔德源、李颜、王彦良、李茂、朱珍等分别代理朔州、将州、霍州、灵石县、洪洞县政务。
在扫荡山西中部未下州县期间,徐达还曾调兵遣将,为镇压孟州叛乱做准备。洪武元年(1368年)十二月二十四日,孟州来降之故元旧臣发动叛乱,当地明朝官吏全部遇害。由于孟州东部有太行山作为天然屏障,而且在相邻的河北真定等地驻有官兵把守,乱党难以向东扩展,因此徐达在得知消息后,一面从太原派兵南下,驻守祈县、清源县,一面派兵北上,巡视石岭关,很快在孟州以西构筑了一道以太原为中心的防线,以遏止乱党势力向山西内地的扩散。为确保河北地区的安全,同时为围剿孟州做准备,徐达在二十七日又下令调驻守山东东昌平章韩政镇守河北顺德,命令留守河南卫辉镇抚王处仁率兵守卫真定,并令其随时听候调遣。当天,由于孟州乱党兵据乾河口寨,徐达又派人往守祈县灵树口。在一切准备就绪后,徐达于洪武二年(1369年)正月初二下令指挥张焕率兵1万,进攻孟州山寨,平叛行动正式开始。
此刻,大概因为得到了太原被攻克、扩廓帖木儿已经败逃的消息,右副将军冯宗异没有遵照大将军徐达的指令率部北上太原,而是继续率兵进攻晋南未下州县。洪武元年(1368年)十二月初八,冯宗异等率兵自潞州西攻猗氏,擒获元右丞贾成。次日,又北向攻克平阳,生擒元右丞李茂。
十二月十二日,徐达派平章俞通海前往平阳,再次督令右副将军冯宗异等率兵至太原与大军会合。十六日,冯宗异等又率兵攻克绛州,生擒元左丞田保保、徐伯昌,获其将士五百余人、马三百余匹。大约是在接见了俞通海后,冯宗异才奉徐达之命,率部北上。
洪武二年(1369年)正月初五,右副将军冯宗异、偏将军汤和等率部抵达太原,与徐达所部北平之师正式会师。随后,徐达对各部兵力进行综合调配、统一部署,山西已下州县的遗留问题很快得到了解决,各处未下州县不久也被相继纳入明朝版图。
正月初八,指挥张焕率部攻克孟州四底寨,重创叛军。初十,徐达传檄命令河南左丞何文辉留兵五百驻守河南,率领其余兵马随同出征。十一日,指挥韩温率部攻克了乱柳寨。十二日,徐达命令右丞薛显统率宁国、长兴、宜兴及顺德、泽州、潞州等地卫所官兵,攻取晋南桃花及豫北蚁尖等山寨,同时派遣参政傅友德、都督副使顾时分率步骑兵巡行太和岭之西北、东北。十五日,指挥张焕又挥兵攻克了孟州张赵寨。至此,孟州叛乱基本平息。十六日,参政陆聚遣人将所俘托天寨头目赵秉直等15人送至徐达军营。十九日,副将军常遇春奉命自太原率兵攻取晋北军事重镇大同。二十一日,参政傅友德又奉命率兵屯守晋北另一军事重镇朔州。
为了严明军纪、安定地方,徐达在正月二十六日派人张榜于泽州、潞州等地,告诫其部下随征官兵“毋得扰民;所获敌人,不许伤其肢体;其离散民人老幼,给予完聚,各营不得拘留”。二十七日,右丞薛显率部攻克了桃花寨。二十八日,徐达令参政陆聚分兵把守井陉、固关。三十日,薛显部下平章韩政又率兵攻占了蚁尖寨。史载:蚁尖寨在元末时就被元右丞吴庸、王居义、小锁儿等占据,吴庸等以此为据点,“剽掠旁近居民,以给众食”,因此周边百姓深受其害。徐达在统兵北取元都、途经河南时,曾分遣将士收服当地山寨,只有蚁尖寨仗恃其“山险绝不可攀跻”不肯归附。时至洪武二年(1369年)正月十二日,徐达再次下令右丞薛显督兵进攻蚁尖寨等处。不久,薛显部下顺德守将平章韩政奉命率兵列营进攻该寨元军。吴庸“度势不能支”,遂诱杀王居义和小锁儿,提着二人的头颅,率领寨民至韩政军前投降。
山西全境告克后,徐达又马不停蹄地挥师西渡黄河,扫荡盘踞在关西的元朝残部和当地地主武装。洪武二年(1369年)二月十六日,大将军徐达、副将军常遇春、右副将军冯宗异等正式统兵离开太原,当晚入驻徐沟。尔后,徐达率部沿汾水朝西南方向进发。二十二日,徐达等自霍州进至平阳,右丞薛显从桃花寨率部前来会合,并将元降将知院杜旺等11人送交徐达。徐达命令指挥王某统领元帅章存道所部兵驻守平阳,其余将士则整装准备进攻陕西。
洪武二年(1369年)二月二十九日,大将军徐达统率大军自平阳进驻河中府,命令指挥张良“造浮桥、选士马”,随从副将军常遇春、右副将军冯宗异率先西渡黄河,进军陕西。二月初一,徐达亲率大军渡过黄河,统一西北地区的大规模军事行动正式开始。
三月初二,徐达兵驻蒲城之车渡店,七稜等寨守军闻风而逃,指挥朱明等奉命率兵镇守其地。元城守将副枢施成前来投降,徐达派兵往守其城,仍命施成协同镇守。初五,徐达进驻栎阳之康桥,派遣武德卫参随乔巨川往守同州、雄武卫参随孙德等镇守沧头及栎阳,随后率军横渡泾水,进逼鹿台,兵锋直指奉元路治所所在地咸宁。
在此之前,元行省平章李思齐盘踞凤翔,副将许国英、穆薛飞等镇守关中,张思道与孔兴、脱列伯、金牌张、龙济民、李景春等驻军鹿台,以保卫咸宁。在得知徐达挥师入陕的消息后,张思道等先期在三月初三逃走。三月初六,徐达师至鹿台,遣都督佥事郭子兴率轻骑先捣咸宁,自己统率大军随后跟进。大军渡过渭水,进至咸宁近郊的三陵坡后,咸宁“父老千余迎降”,徐达“抚慰之”。为了不致惊扰城中居民,徐达还特地在此稍作停留,一面派遣左丞周凯先行进城,安抚居民;一面下令“禁戢军土”,重申军纪。
三月初七,徐达整兵入城,所部将士“一无所犯”,因此“秦民大悦”。当天,徐达下令改“奉元路”为“西安府”,并委任夏德润代理府事,常达暂任经历。西台御史桑哥失里困守关家洞,徐达随后派兵往攻。桑哥失里“势穷促”,举家投崖自杀。左丞拜泰古进入终南山,郎中王可服毒身亡,检校阿失不花自杀而死,三原县尹朱春与妻子也跳崖自尽。至此,元朝所设陕西行省及奉元路政权机构彻底瘫痪。
三月初九,徐达命副将军常遇春、右副将军冯宗异等率军自西安出发,攻取凤翔。十二日,常遇春等师至凤翔。李思齐放弃凤翔,率领所部十余万人向西逃往临洮。常遇春统兵入城后,俘得其部将薛平章等。
三月十七日,徐达下令军士修造咸阳桥,命令都督耿炳文留守西安,随即亲自统率大军启程前往凤翔。临行之际,徐达又遵明太祖之命,派平章杨璟率左丞周凯及张参政等还师河南,镇压唐州兵变。二十日,徐达进至凤翔,命指挥吴宏代理凤翔知府之职,不久又改命镇抚黄源为署同知并取代吴宏担任凤翔知府,同时派指挥余思明率兵守御凤翔。
四月初二,徐达在凤翔召集部将共商军队下一步的进攻方向。徐达部将大多认为张思道的才智不如李思齐,而且张思道所据之庆阳比李思齐盘踞的临洮易于攻取,所以想先由豳州攻取庆阳,再经陇西进攻临洮。但是,徐达不同意他们的看法,认为应当先攻临洮,后取庆阳等处,说:“不然。(张)思道城险而兵悍,未易猝拨。临洮之地,西通蕃夷,北界河湟,我师取之,其人足以备战斗,其土地所产足以供军储。今以大军蹙之,(李)思齐不西走胡,则束手就降矣。临洮既克,则旁郡自下。”众将领听了徐达的这番话后,一致认为他的方案更加合理,因此都转而支持徐达。随即,徐达命御史大夫汤和留守营垒辎重,令指挥金兴旺偕同余思明等守卫凤翔,自己亲率大军向西进发,直趋陇州。
四月初三,徐达所部通过陇州,进驻图关山。元平凉府华亭县白同佥派人来到军前请降,且进献良马10匹。徐达遣参随金国宝前往华亭招抚当地军民,同时命参随王敬祖暂掌陇州事务。初六,徐达师至秦州马跑泉,元秦州守将吕德、张义等出逃,其部将镇抚王某被俘。都督佥事陈德奉命领兵追击,不久便将吕德抓捕归案。徐达命部下鹰扬卫百户李德春暂时负责守卫秦州,令参随陈忠代理州中政务。初八,徐达檄令都督耿炳文、指挥金兴旺各运军饷5000石赴巩昌,命令合肥卫千户王宏率兵五百驻守陇州、张规鲁率兵一千驻守秦州。初十,徐达率兵进入伏羌,夺取了宁远,命令指挥储秭搜捕伏羌山洞余寇,参随苗成暂掌伏羌县政务,同时委任百户何胜驻守宁远,参随刘彦龙代理该县政事。
四月十一日,徐达进军至巩昌。元守将平章梁子中、侍郎陈子林、郎中谭某、员外郎鄢某率先出降,接着总帅汪灵真保、左丞周添祥、达鲁花赤张虎、都帖木儿、万户董裎、雷清、石荣等也相继来降,徐达都“礼待之”,并派人“送(汪)灵真保等赴京”。当天,徐达命令都督佥事郭子兴领兵驻守巩昌,分遣右副将军冯宗异统领天策、羽林、骁骑、雄武、金吾、豹韬等将士西征临洮;都督副使顾时、参政戴德各率所部进攻兰州。次日,徐达又派凤翔秀才张孝德前往平凉,安抚当地军民。十三日,冯宗异兵至临洮,李思齐不战而降,主动献上银印等物,冯宗异等不费一兵一卒,俘得李思齐部众十余万。
李思齐投降后,冯宗异派人将其送至大将军徐达处。赵琦等为势所迫,也相继来降。随后,冯宗异派遣宣使张本中至京师报捷,徐达则下令部下指挥韦正与降将赵琦、司马来兴、朵儿只吉等领兵共守临洮。五月二十一日,徐达又派指挥曹崇将降将李思齐送往京师,并派人将缴获所得临洮银印一颗、白金九千两、黄金百两送突陕西行省。
在临洮告克的同一天,即四月十三日,都督副使顾时等也率兵攻克了兰州,指挥韩温奉命驻守其地。十六日,徐达又统兵进占定西州,命降将陈宗聚、李克让署理州中事务,并调青州右卫官军驻守该城。当天,徐达部将右丞薛显又率领虎赏、骠骑、刑林等将士攻克了马鞍山藏族人所据山寨,俘其牛、马等牲畜而还。
徐达在降服了临洮李思齐并占领了西北军事重镇兰州后,决定率师东进,消灭长期以来盘踞西北地区的另一支实力较强、影响较大的元朝残余势力,那就是庆阳张思道兄弟所部,为最终将整个西北地区纳入明朝版图铺平道路。在进军庆阳途中,徐达所部翻山越岭,过关斩将,攻城略地,势如破竹。
四月二十日,大将军徐达率师进至会州,委任部下参随黎宗文代理州中政务,命令指挥陈寿、周用等领兵守城。史载:是时徐达部将之中“有欲括所下州县羊马以供军用者”,徐达对他们说:“西北之民素以畜牧马为生。今奉命吊伐,本以安民,若尽括其所资,彼将何以为生?”断然拒绝了他们的请求。二十一日,临洮告捷奏章送达京师。明太祖此时虽然并不知道徐达已经开始了东攻庆阳张氏的军事行动,但是凭着对徐达的为人及办事效率等方面的了解,他预料徐达很快就会挥师东进,攻打庆阳,而狡猾的张氏兄弟在大军压境的情况下,也很可能虚与委蛇,所以他在看过刚刚自临洮送来的奏章后,立即派遣使者前往西北传谕大将军徐达,一面褒奖徐达提师西征之功,并询问有关攻打庆阳和宁夏的进展情况;一面又将他获悉的有关张思道兄弟的情况通报给徐达,且告诫徐达务必小心应付庆阳张氏兄弟,切勿中其奸计。在谕令中,明太祖道:“将军提师西征,所至克捷,今李思齐又纳降矣。但未知庆阳、宁夏攻取如何?张思道兄弟多谲诈,若其来降,宜审处之,勿堕其计也。军中之事,尤宜慎之。”明太祖的情报,对徐达妥善解决庆阳问题,无疑具有积极的作用。
四月二十二日,徐达师至靖宁州,元知院杜伯卜哈出逃。徐达派遣指挥潘某率兵追赶,杜伯卜哈逃脱,仅俘其随从部属和马匹而还,于是徐达转而派人招降。同时,徐达又派兵攻占了靖宁州东北约七八十里处的隆德县,为其所部明朝大军挺进六盘山扫清了障碍。第二天,徐达率领大军翻越六盘山,进驻开城。当天稍后,有谍者来报,说元将扩廓帖木儿正率兵驻扎在西安州。徐达得知消息后,当即下令平章俞通海立栅留守开城,亲自带兵直赴西安州,进抵距西安州仅20里的海那都。随后,徐达乘敌不备,派右丞薛显率领精兵5000人前往袭击。扩廓帖木儿仓皇逃走,徐达所部获其部下人口、头目及车辆而还。
五月初一,徐达还军至红城,奉命率兵北击扩廓帖木儿所部的右丞薛显又从鸣沙州来到红城与徐达会师,并且押回了所俘扩廓帖木儿部将毛祥、元知院尹铎、李遵正、郭英、左丞董信、任弘等及马2000匹。
五月初四,徐达挥师渡过萧关,占领了平凉,当地“父老相率持羊酒来迎”。随后,徐达一面派指挥储秭前往隆德、靖宁,会同指挥吴汧、陈寿所部,平定当地尚未降附之山寨,遣段答剌罕、参政麻毅等招抚华亭等处;一面着手“谋取庆阳”。他命令御史大夫汤和派兵前往泾州,以防庆阳敌军南窜,同时派遣指挥张焕率骑兵巡逻至庆阳,以侦察敌情。在平凉告克的同一天,蒲城指挥朱明也率部北上,攻克了延安。由于延安地处庆阳东北,是庆阳敌军东逸或北逃的重要通道,所以徐达随即命令朱明领兵镇守其地。
庆阳张思道在获悉明朝西征大军平定临洮的消息后,内心已经恐慌。待到徐达所遣使者来到庆阳、扩廓帖木儿大败西安州的消息传开后,张思道更加惧怕。他不敢与徐达所部临阵对敌,但又不甘俯首就擒,于是在此后不久,便留其弟弟张良臣与平章姚晖率兵驻守庆阳,自己则带着一些轻骑逃往宁夏。结果,张思道在宁夏与扩廓帖木儿不期而遇,并被扩廓帖木儿出其不意地拘禁起来。张良臣为人狡诈多智,而且骁勇善战,军中称他为“小平章”。然而,他在奉命留守庆阳后不久,就陷入徐达所部西征大军的包围之中,处境十分不利。扩廓帖木儿关押张思道的消息传到庆阳后,又使得张良臣对北元朝廷极为不满,而且备感孤立。恰在这时,汤和部将谢三派人至庆阳招降张良臣,因此张良臣趁此机会,于五月初八派遣部下参政花某前往大将军徐达军营,献上所部军民数目,紧接着又遣其知院李克己、葛八来报上所部军马之数,向徐达表示投降。
由于在此以前明太祖曾经提醒大将军徐达要提防张思道、张良臣兄弟使诈,所以当张良臣遣使请降时,徐达表面上坦然而受其降,内心却并没有放松对张良臣的戒备。正因如此,当张良臣的使者李克己等随后返回庆阳复命时,徐达特意派遣右丞薛显率骑兵五千、步兵六千随同前往庆阳。徐达之所以要派遣如此多的官兵前往庆阳,不是为护送李克己等返程,也不单纯是为了到庆阳“受降”,即为了尽快接手庆阳防务,以免张良臣出尔反尔。从各方面情况分析,徐达此时派薛显统率大批官兵随同庆阳来使前去受降,还有借此监督、威慑,甚至考验张良臣的深意。如果张良臣确实只是为了延缓明朝西征大军进攻庆阳的步伐而假意归降的话,等明军一到庆阳受降,张良臣要么因害怕西征将士军威而俯首帖耳,弄假成真;要么很快就会原形毕露,举兵作乱。或许根据徐达的估计,如果张良臣真的降而复叛,薛显所部一万一千官兵即使不能将张良臣及其所部叛军立即就地镇压,也足以充当其先锋,与叛军相持,有效防止事态的扩大,遏止乱党势力的蔓延,直到他率领平叛大军到达庆阳。五月初十,徐达率大军离开平凉。次日,徐达等进抵庆阳西南方的泾州。
张良臣之降实为情势所逼,本非出自真心,所以当他得知徐达派遣一万多名官兵前来庆阳的消息后,立刻疑心大起,唯恐徐达以兵“捕诛”之。五月十五日,薛显等抵达庆阳。张良臣亲自率众出城,匍匐道旁相迎,并且进献牛肉、美酒,装出一副卑躬屈膝、诚心归顺的样子,以此欺骗薛显及其所部将士,放松他们的警惕性。当天晚上,张良臣发动叛乱,出兵袭击薛显所部军营。薛显等毫无防备,在叛军的猛烈攻击下很快溃不成军,指挥张焕被叛军俘虏,薛显负伤逃回徐达军中,所部一万多名官兵损失殆尽。
庆阳之叛虽然有些突然,但徐达闻变后,并没有惊慌。随后召集部下诸将通报军情、商议对策时,他胸有成竹地说:“上(指明太祖)明见万里外,今日之事果如前日所谕。然(张)良臣之叛,祗取灭亡耳,当与诸公裁力翦之!”不久,右副将军冯宗异、参政傅友德得到庆阳张良臣叛乱的消息,率军自临洮来到泾州。御史大夫汤和闻讯后,也率部前来与徐达会师。
五月二十一日,由于援军陆续抵达泾州,加之担心张良臣在各地的党羽“相互为声援”,徐达命令平章俞通海、都督副使顾时、参政傅友德、都督佥事陈德率领兵马,分别攻打庆阳西、北、东、南四境,“抄其出入之路”,切断其对外联络,破坏其粮饷等物资补给线。
六月初二,宁州父老前来请降。由于宁州北距庆阳约一百二十里,是叛军南下的必由之路,地理位置十分重要,因此徐达立即派遣指挥吴宏招抚宁州并招徕邢州等处军民。为了进一步加强对庆阳周边重镇的监控力度,缩小对庆阳叛军的包围圈,徐达先于初六下令调凤翔守御指挥余思明驻守平凉,接着又在十二日派遣指挥陈寿率军镇守镇原、黄旺领兵出守泾州,并下令处死了泾州巡逻士兵逮到的庆阳叛军间谍张五。
就在六月十二日这一天,徐达统领大军离开泾州,朝庆阳方向挺进。十七日,徐达兵驻镇原,命令右副将军冯宗异、御史大夫汤和、都督副使顾时,参政傅友德等率兵四面进围庆阳城。
在徐达挥师围城之际,张良臣打开庆阳城西门外出取水,而且故意“恣人马驰骋城下”,公然藐视平叛大军。徐达大怒,督令冯宗异率部继续推进,紧逼庆阳城西门扎营,并派遣宁国卫将士把守其东门。六月十八日,张良臣派兵从东门出城进攻围城官军。都督副使顾时率兵迎战,将其击败,俘获其裨将9人,徐达下令将他们全部处死。六月十九日,徐达亲自督军攻打庆阳四门,城上箭如雨下,但平叛官军毫不退缩,奋勇拼杀。虽然此番进攻未能如期攻破庆阳城守,但它充分展示了西征将士平叛的决心。不久,奉命率兵巡视环州的将领李德明抓获了张良臣派往宁夏求援的间谍竹苛,并派人将其押回庆阳,交给徐达处置。竹苛,原系张思道部下理问官,后来改投扩廓帖木儿,并奉扩廓帖术儿之命自宁夏来到庆阳窥探徐达所部军情。庆阳被围后,张良臣又派他返回宁夏向扩廓帖木儿求援。为了打击叛军士气,动摇敌人军心,徐达下令将竹苛缚至庆阳城下,当众处斩。
六月二十日,张良臣亲自带兵自西门出城挑衅,徐达部下宁国卫官兵接战不利,稍有退却。接着,张良臣又率兵进逼兴武卫营,该营指挥张四坚壁不动。右副将军冯宗异率兵赶到后,挥兵与战,张良臣又被迫逃回城中。事件发生后,徐达立即增派都督佥事陈德把守庆阳西门。二十三日,参政傅友德也率部移营至庆阳城下,与各路兵马合力攻城。
六月二十八日,时当盛复的庆阳突然风雨大作并且下起了大冰雹,洪水泛滥成灾。当地百姓历经战乱,又逢天灾,真是苦不堪言。然而,这对被围庆阳城中、水源严重不足的张良臣及所部叛军来讲,却是取水、储水的良机,所以张良臣趁此机会派遣大批叛军出城抢水。徐达部下龙骧卫官兵奉命阻击,双方激战至二更时分,叛军大败,狼狈逃入城中。在此之前,由于庆阳城被围日久,城中粮饷及用水等的供应都日趋困难,张良臣屡次出战均以失败告终,以及叛军外援希望渺茫等因,张良臣部下军心已经开始动摇,其守城者已有一百余人暗中从东、西门出逃,投降徐达。夺水之战复遭失败后,张良臣部下出城投降者大幅度增加,在不到一周的时间里便多达一千多人。
为了挽回败局,稳定军心,张良臣在七月初四又乘庆阳刮起大风之机,发兵进攻围城官兵,结果还是被徐达所部将士打得落花流水。初五,内外交困、恐惧万分的张良臣被迫登上庆阳城头,向城下大呼请降。但是,徐达因张良臣为人狡诈异常,这次请降也未必出自真心,再加上愤恨他叛服无常、屠杀大批西征将士,决心要将他正法,所以断然拒绝了张良臣的投降请求。
七月十七日,张良臣再次派兵自东门出城挑战,龙骧卫官军将其击败,俘获其枢密、同佥等官。在此后一段时间里,徐达由于忙于调兵遣将讨伐扩廓帖术儿部将韩扎儿所部南侵之兵,一度减缓了对庆阳叛军的攻势。
八月初二,徐达下令河北顺德守御平章韩政率部赶赴庆阳,加强庆阳平叛官兵的攻击力量。不料,就在这个时候,元将领贺宗哲又率兵大举南侵。为此,徐达被迫再次分兵对付入侵者,暂缓对庆阳叛军的军事进攻。初四,庆阳叛军将领张十五(外号“小元帅”)在夜幕的掩护下逃出城外,投奔徐达。据记载,起初张十五与张良臣一起守卫庆阳,后来由于徐达所部将士对叛军的攻势不断加强,庆阳形势危急,张十五想投降,结果被张良臣囚禁起来。当天夜里,庆阳城中其他想要出城投降的叛军趁黑劫狱,将张十五救了出来,然后出城直奔徐达军营。为了进一步分化和瓦解叛军、削弱叛军的战斗力,徐达不仅接受了张十五等的投降请求,而且下令军中将士不得虐待来降者。
八月十二日,明太祖派遣都督佥事吴祯持敕前往庆阳,对徐达及其所部西征将士在平定庆阳张良臣叛乱后的去向、任务等,做出了较明细的安排和分工。在敕书中,明太祖命令徐达道:“如克庆阳,宜令右副将军都督同知冯宗异掌总兵印,统军驻庆阳,节制各镇兵马。粮饷不给,从前规措,无致伤民。巩昌、临洮、兰州诸军镇守如故,兵不足者益之。如河中四外已宁,则以都督同知康茂才所部士卒三分之:茂才师其二,往镇山西,凡太原诸城,悉听节制;其一增守陕西。务在处置得宜,然后大将军(徐)达、偏将军(汤)和回京,定议功赏。”
时至八月中旬,由于一直未能攻破庆阳城,无法如愿将罪魁祸首张良臣绳之以法,使徐达不可避免地承受着相当大的精神和心理压力;元将领扩廓帖木儿、韩扎儿、贺宗哲等与庆阳叛军相互呼应,并且不断率部南下骚扰,使西北地区不得安宁,当地百姓深受其害,又使徐达面临强大的军事压力;庆阳战事经久不绝,虽然明太祖从未公开加以指责,但身为大将军的徐达心中自然清楚,如果他继续屯兵坚城之下,劳师无功,甚至再损兵折将的话,后果自不待言。正因如此,在明太祖敕令发出四天后,徐达便再次对庆阳城发动了猛烈的攻势。八月十六日,徐达督率各路兵马猛攻庆阳,官兵“争穴其城”。虽然由于张良臣命其手下“极力救御”,徐达所部还是没有达到攻破庆阳叛军巢穴的目的,但是经此一战后,张良臣部下“奔逸、归附者甚众”,叛军进一步瓦解。
此时,身在宁夏的张思道心知庆阳被围日久,其弟张良臣必定难以支撑,因此特地派遣部将右丞王让等自宁夏前往庆阳,并拿着他平日所佩金带和所穿白氍衣作为信物,让他们告知张良臣“王保保已往永昌”,并要张良臣投靠扩廓帖木儿。结果,王让等八人走到环州时,被徐达部下都督佥事陈德所部抓获。八月十八日,王让等被押送至徐达军营。
庆阳被围既久,城中“粮饷乏绝”,原来与张良臣共守庆阳的平章姚晖、熊左丞、胡知院、葛八等“知事不济”,于是萌生了投降徐达的念头。
八月二十一日,姚晖等争先恐后地打开城门,迎接徐达所部将士,于是徐达率兵自北门入城。庆阳城陷落后,张良臣与其父欲一起投井自杀,徐达令人将他们从井中拉了出来,并处以死刑。稍后,徐达便派遣指挥陆成赶赴京师应天奏捷。第二天,徐达又下令将张良臣党羽柴知院等二百余人正法,收缴了张良臣等原用银印,并委任都督佥事陈德负责镇守庆阳。至此,徐达费时三个多月,终于平定了庆阳之乱,叛乱首领张良臣等得到了应有的惩罚。
徐达在率部镇压庆阳张良臣叛乱的同时,继续采取和平招抚与武力征讨的双重手段,清除西北地区原存及自北南侵之元残余势力,加强明朝政府在该地区的行政和军事监控能力,稳定当地社会生产和生活秩序。
洪武二年(1369年)五月二十八日,元绥德、葭州守将孙知院、孔荣、关二等前来投降,徐达下令指挥章存道、朱明等率兵分守其地。六月二十四日夜间,右副将军冯宗异的部下抓获并处死了扩廓帖木儿派到庆阳打探军情的四名间谍。事隔两天,元左丞陈湾等率兵进攻凤县,徐达部下指挥张龙率兵将其一举击溃,阵斩陈湾及李院判等数十人。二十八日,李德明又派人将元来降平章申成、参政冯贵等18人,从环州送至徐达军营。
七月初二,徐达派遣降将李茂等率骑兵一千人前往隆德、秦安等处,搜捕当地尚未降附的头目杜伯不花、罗左丞等。十一日,元合水守将参政盖成前来投降徐达,并献马20匹。徐达因盖成曾经驻守华池寨,又派他前往招抚其旧部,同时派来降元佥院王晋招抚木瓜堡、铁哥城等寨元之兵,命柔远镇故城社头目张彬招抚其旧寨未降军民。十六日,元降将李茂等在会州巡逻时,抓获元将领张演和达达大都虎儿,并将其送交徐达处置。
当徐达集中兵力镇压庆阳张良臣叛乱之际,扩廓帖木儿为了声援张良臣,缓解庆阳之围,阻止明朝官军往西北地区的统一步伐,派遣部将韩扎儿率兵大举南侵。七月十九日,韩扎儿所部攻陷镇原,守将指挥陈寿等阵亡。从当时的形势分析,韩扎儿所部元兵一旦与庆阳张良臣所部叛军合势,不仅徐达所部将士将腹背受敌,陷入极其不利的境地,使得庆阳平叛行动功亏一篑,而且很可能使整个西北地区的战局发生逆转,造成意想不到的严重后果。正因如此,徐达在得到报告后,马上与都督冯宗异、参政傅友德紧急磋商应对之策,决定立即派遣右丞徐礼率兵把守位处镇原和庆阳之间的军事要塞驿马关,阻止元军向庆阳方向推进。同时,为了防止韩扎儿避开驿马关,自镇原向今甘肃东部和陕西中南部继续深入,徐达又紧急派遣指挥叶谷真往守宁州,调指挥韦正驻守邠州,使原设泾州驻防官兵得与派驻宁、邠两地官兵互为犄角、相互应援,在此构筑起一个三角形的区域性防御体系。此时,冯宗异又向徐达献计道:“今大军围庆阳,张良臣虽困,未能遽下。王保保欲为(张)良臣声援,故令(韩)扎儿攻原州,欲以缓庆阳。请得移军逼关(指驿马关),以扼原州,彼无所施矣。”徐达表示赞同,于是冯宗异迅速率其所部向驿马关方向进发,在离庆阳三十里、距关二十多里的地方安营扎寨,准备随时应援徐达所部守关官军。
当徐达等紧锣密鼓地准备迎敌时,韩扎儿大抵也料到徐达会在镇原通向庆阳的道路上布下重兵,所以他出其不意地在兵陷镇原的当天晚上就率兵南下,一举攻拔了防守力量较为薄弱的泾州,负责守城的丁千户被迫率兵退保灵台县。泾州失陷后,徐达原来在这一地区建立起来的三角形防御体系虽然遭受重创,但是由于灵台及时取代泾州,填补了其中空缺,因此这一防御体系并没有就此瓦解,依然在发挥着它的作用。韩扎儿在率兵袭破泾州后的十天之中,在军事上再也没有取得什么进展,这便是最好的证明。七月二十九日,右副将军冯宗异率兵南下讨伐韩扎儿。韩扎儿闻风而逃,冯宗异追至邠州,韩扎儿又掉头逃往宜禄。冯宗异率部紧追不舍,韩扎儿被迫逃回北漠。随后,冯宗异也回师屯守驿马关。
徐达部下将士刚刚赶跑了韩扎儿,元总制贺宗哲又率兵南侵,因此徐达等不得不迎接新的挑战。八月初二,贺宗哲率兵突入,猛攻凤翔。守城指挥金兴旺、知府周焕等据城固守,矢石齐下,敌军不敢接近。贺宗哲突袭不成,转而围困凤翔城,派兵轮番进攻。
八月初三,徐达部下骠骑卫从征降将宁文明暗中派人向贺宗哲通报军情,被巡逻骑兵抓获。徐达下令将宁文明及其信使一并处斩,以明军纪。同一天,徐达还下令任命前镇原州降官温汉臣为镇原署同知。不久,徐达又派指挥刘广、铁甲冯等驻守镇原。因此,昔日遭韩扎儿严重破坏的镇原地区的社会秩序得以恢复,明朝政府对该地区的行政和军事监管能力大大增强。
在贺宗哲率部南侵之时,扩廓帖木儿也亲自率军前往永昌,企图牵制徐达的兵力,声援庆阳张良臣。但是,由于徐达指挥有方,所部将士奋不顾身,因此扩廓帖木儿的举动终究还是改变不了当时西北地区的战局。当庆阳张良臣所部叛军走投无路、濒临瓦解时,贺宗哲所部也因久攻凤翔不能得手,军心发生动摇,降者接踵。八月十九日,贺宗哲部下右丞葛彬投降徐达。是日,扩廓帖木儿麾下部分知院、都事等官也被徐达所遣巡逻骑兵抓获,并送交徐达。二十一日,庆阳城陷、张良臣被处决的消息迅速传开,贺宗哲闻风丧胆,急忙率部向北逃窜。
八月二十五日,徐达自庆阳移师驿马关。二十七日,徐达进驻镇原,右副将军冯宗异、右丞薛显和参政傅友德都率部前来会合。次日,徐达听说贺宗哲经六盘山北逃,立即下令都督副使顾时、右丞薛显、参政傅友德率骑兵一万人前往追击。在此前后,明太祖再次派遣金吾卫千户秦毅传谕大将军徐达,说:“未闻班师之期,朕日望之;勅至,可即日上道。其镇守方略,悉如前勅。”
九月初一,徐达师至平凉,左丞何文辉又从宜禄率兵前来会师。这时,徐达已经接到明太祖的敕书,准备返回京师。在动身返京前的几天中,徐达积极处理西北地区善后事宜,设法健全明朝政府在该地区的行政和军事管理体系,力争确保当地社会秩序的稳定及人民生命财产的安全。他派指挥孙某与指挥余思明、朱祐等同守平凉,命都督副使顾时率骑兵攻打得而复失的靖宁州,令何文辉镇守潼关、指挥韦正守卫临洮,委任断事严某为开城州知州,并指派元降官、原开城州州判马思忠共同处理州中事务。初三,徐达得知贺宗哲率兵攻掠兰州的消息后,迅速派右副将军冯宗异率步、骑兵一万七千人,取道靖宁州,前往兰州抗击来犯之敌。贺宗哲闻讯后,立即沿迭烈巡渡河逃走,于是冯宗异也率部撤回平凉。初四,元庄浪州宣差老关笃坚来降,徐达命他仍旧代理州中事务。同一天,右丞梅思祖所部将在邠州抓获到的庆阳叛军逃将元参政毛贵等30人押至平凉,徐达下令将其全部正法。
九月初十,大将军徐达与御史大夫汤和一道自平凉启程回京,右副将军冯宗异奉敕代领其众,总掌西北地区军事。
十一月初一,徐达抵达京师,朝见明太祖。至此,徐达正式结束了他长达两年多的北伐和西征之行。
十二月二十八日,明太祖亲至奉天门,论平定中原及征南将士之功,大将军右丞相信国公徐达因率军攻取山东、河南、燕、冀、秦、晋等处州郡,“克敌制胜,振扬国威,抚绥军民,得大将体”,位居功臣榜首,获赏白金、文币。这时,明太祖本想“大论封”,徐达功勋卓著,极有可能再度加官晋爵,但由于不久后扩廓帖木儿率兵攻打兰州的消息传到了明朝京师,明太祖急于出兵讨伐扩廓帖木儿,因此论封功臣之事被耽搁了。