陳友諒的驍將張定邊帶著陳友諒的次子陳理逃回武昌。朱元璋派大將常遇春率軍進攻,自己返回應天,又率軍直搗武昌,收降陳理和張定邊,湖廣、江西各郡縣依次掃蕩平定。
朱元璋接著下令討伐張士誠。當時張士誠所占據的地盤,南到紹興,北到通、泰、高郵、淮安、濠泗,直達濟寧。徐達、常遇春等人奉朱元璋的命令,攻取淮安等地,連敗張士誠軍,濠、徐、宿各州相繼被攻下。接著又分兵進攻浙西,連拔湖州、嘉興、杭州,又向東殺進紹興。那時韓林兒已死,朱元璋於是去掉龍鳳年號,建國號為吳,立宗廟社稷。又命徐達等人進逼平江,張士誠固守了幾個月,彈盡糧絕,城被攻破,張士誠見大勢已去,上吊自殺。
方國珍先前投降朱元璋,後來又割據稱雄,朱元璋派大將湯和、廖永忠等人水陸夾攻,方國珍無奈請求歸降。湯和押著方國珍回到應天,不久方國珍病死。
此後朱元璋攻克福州和永平,殺死福建平章陳友定,又進攻廣州,收降廣東行省左丞何真,誅殺海盜邵宗愚,各個郡縣相繼歸降。連九真、日南、朱崖、儋耳等城,也都納印歸降,心悅誠服。於是南方大定,吳相國李善長等人連連上表勸進,擁戴吳王朱元璋稱帝。
元順帝至正二十八年正月初四,朱元璋行登基大禮,國號為明,建元洪武。一班開國功臣在這天的辰時,簇擁著朱元璋出應天城,先到南郊祭告天地,由太史官劉基代讀祝文。其文如下:
惟大明洪武元年,歲次戊申,正月壬辰朔,越四日乙亥,皇帝臣朱元璋,敢昭告於皇天後土曰:伏以上天生民,俾以司牧,是以聖賢相承,繼天立極,撫臨億兆,堯、舜禪讓,湯、武吊伐,行雖不同,受命則一。今胡元亂世,宇宙洪荒,四海有蠭蠆之憂,八方有蛇蠍之禍;群雄並起,使山河瓜分,寇盜齊生,致乾坤棄滅。臣生於淮河,起自濠梁,提三尺以聚英雄,統一旅而救困苦。托天之德,驅陸軍以破肆毒之東吳,仗天之威,連戰艦以誅梟雄之北漢。因蒼生無主,為群臣所推,臣承天之基,即帝之位,恭為天吏,以治萬民。今改元洪武,國號大明,仰仗明威,掃盡中原,肅清華夏,使乾坤一統,萬姓鹹寧。沐浴虔誠,齋心仰告,專祈默佑,永荷洪庥。尚饗!
讀完祝文,朱元璋率群臣行九叩之禮,南麵稱尊。文武百官以及都城父老都歡呼雀躍,三呼萬歲。隻見天朗氣清,風和日麗,居然現出一派太平的氣象。從此,吳王朱元璋就成了明太祖高皇帝。朱元璋即位後,返回都城升殿,接受群臣朝賀,追尊列祖為皇帝,冊封馬氏為皇後,世子朱標為皇太子,封李善長、徐達為左右丞相,各功臣全都論功行賞。
第二天,朱元璋下詔討伐元朝,任命徐達為征虜大將軍,常遇春為副將軍,率大軍二十五萬即日北行。大軍過淮河、黃河,直取山東,勢如破竹,接連攻陷沂州、嶧州、般陽、濟寧、萊州、濟南、東平等地,元軍土崩瓦解。明軍轉戰河南,攻破虎牢關,大敗元將脫因帖木兒,也就是擴廓帖木兒的弟弟,然後乘勝攻進汴梁。元將李思齊、張良弼等人多次接到順帝的詔旨,命令他們出兵潼關抵禦南方的叛軍,他們卻拖延不發兵。直到明軍進入河南,他們才不得已率兵駐守潼關。沒想到明軍很是厲害,幾天就到了潼關,放起一把大火,把張良弼的軍隊燒得焦頭爛額。張良弼逃走,李思齊也逃回了鳳翔。大好的一座潼關被明軍占去。
擴廓帖木兒聽說李思齊等人被明軍所困,乘機率兵向東出發,來襲擊關保、貊高,兩人來不及防備,都被他活捉了去。擴廓帖木兒還要繼續帶兵進犯,險些逼近京郊。順帝大驚,慌忙下詔歸罪於太子,同時恢複擴廓帖木兒的官爵,仍然封為河南王左丞相,派他率軍南下截擊明軍。擴廓帖木兒這才退兵屯守在平陽,逗留不發。
明朝大將徐達接連攻下衛輝、彰德、廣平,進兵臨清,然後召集眾將,分兵向北進攻。到了德州,又合軍長驅直入。元兵水陸全部敗北,明軍進而攻陷通州。元知樞密院事卜顏帖木兒力戰敗亡,元朝廷大為驚恐。
順帝無計可施,隻得召集大臣和三宮後妃,共同商議向北逃亡的事。知樞密院事黑廝、宦官趙伯顏不花等人極力勸阻,順帝卻不聽。趙伯顏不花痛哭著說:“天下是世祖的天下,陛下應當死守,怎麼能輕易出逃呢?臣願率軍民出城抵禦,請陛下固守京都。”順帝還在沉吟,偏偏警報又到了,說是明軍就要抵達京城了。順帝嚇得手忙腳亂,急忙命令皇後、皇妃及太子等人收拾行裝,然後任命淮王帖木兒不花代理國政,封慶童為左丞相,兩人一同防守京城。過了黃昏,順帝便帶著皇後、皇妃和太子等人打開健德門向北逃去。等明軍抵達齊化門時,京城中已經是驚恐萬分,淮王帶著殘兵守了幾天,哪裏擋得住百戰百勝的明軍?