太祖皇帝雖然不欲對雲南用兵,可是梁王斬殺他派去的使臣王禕,讓太祖皇帝大失顏面,而且王保保與逃到漠北的韃子皇帝爭端又起,氣極敗壞之下竟然生了重病,一時之間無力南征。太祖皇帝接到軍報之後,召集大臣們商議征討雲南之事。衆臣以爲既然王保保無力南下,正是全力掃平雲南的大好時機,紛紛主張派遣大軍南征,一舉消滅梁王,一統中原。太祖皇帝與衆臣商議之後,封大將傅友德爲徵南將軍,統帥三十萬大軍向雲南進攻。傅友德是大明名將,跟隨太祖皇帝南征北戰,戰功赫赫。他率領大軍南下,至湖廣屯兵兩個月,待到其餘諸軍盡數彙集於湖廣之後,先是派遣一支偏師直奔雲南,分別駐於永寧和烏撒,引誘梁王分兵。梁王果然上當,派出兩支兵馬分頭前往永寧和烏撒,抵擋明軍的進攻。傅友德得知梁王上當之後,立時率領大軍直撲雲南。梁王接到軍報之後,這才知道自己上了傅友德的大當,此時想要撤回駐紮在永寧和烏撒的兩支兵馬已經來不及了,而且一旦這兩支兵馬退回昆明,攻打永寧和烏撒的明軍偏師便可趁機長驅直入,與傅友德率領的明軍主力分進合擊,情勢對梁王越發不利。是以梁王與手下諸將商議之後,不敢將這兩支兵馬撤回,只得收攏昆明城中的守軍和左近府縣的兵馬,又徵發許多平民百姓,湊齊了十萬人馬,以司徒平章達裏麻爲主帥,前往曲靖駐紮,迎擊傅友德統率的明軍。
雙方大軍雲集於曲靖城下,正要決戰之時,突然天降大霧,猶如黑夜降臨一般,伸手不見五指,傅友德和達裏麻不得不各自下令收兵回營。只是達裏麻率領兵馬退回營寨之後,只是斂衆固守,以爲大霧瀰漫,明軍不敢輕易進攻。沒想到傅友德命令大將沐英率領一支精兵趁着大霧瀰漫之機偷渡白石江,從側翼突襲達裏麻大營。達裏麻沒有想到明軍竟然敢在大霧中攻擊自己的中軍大營,驚慌失措之下只想着逃命,竟然連招呼都沒打一聲便即逃走。結果他手下的將士找不到主帥,登時全軍潰散。傅友德趁機率領大軍掩殺,十萬韃子被殺得屍橫遍野,血流成河。韃子主帥達裏麻雖然逃走,但是途中被明軍生擒活捉,狼狽不堪。十萬韃子兵中有兩萬餘人被生擒活捉,其餘將士大半被殺。
梁王困守昆明城,因爲達裏麻在曲靖大敗,使得梁王手下的可用之兵所剩無幾。他原本以爲明軍主力駐紮於曲靖,是以命人在曲靖至昆明的官道上建造了數座土城,將手下僅存的數萬兵馬盡數派遣至這些土城中守衛。沒想到傅友德分兵三路來攻,這些土城只能迎擊從曲靖殺來的沐英和藍玉統率的明軍,而對從永烏和烏撒殺來的兩路明軍沒有絲毫用處。更要命的是沐英和藍玉是太祖皇帝帳下兩員出了名的悍將,統率明軍向昆明急進,途中遇到土城攔路,便即下令猛攻,沒費多少力氣便接連攻下兩座土城,殺死韃子兵八九千人。梁王接到軍報之後,嚇得目瞪口呆,知道倉促之間建起的土城壓根擋不住明軍,而昆明城中只剩下數千兵馬,一旦三路明軍殺至昆明城下,這些殘兵敗將壓根擋不住明軍的攻擊。
其時昆明城中已是一片混亂,許多官吏和將士知道先前達裏麻率領大軍前往曲靖迎擊明軍,已經將梁王手下的精銳兵馬盡數帶走,待到達裏麻戰敗之後,雖然有數千將士逃回昆明城,可是這些人遭逢大敗,已經成了驚弓之鳥,回到昆明城之後到處傳說明軍如何兇悍難敵,使得城中的將士和百姓越發驚恐,紛紛逃散。眼下昆明城中兵微將寡,城破在即,這些官吏和將士自然不肯陪着梁王赴死,紛紛逃離昆明城去另尋生路。梁王衆叛親離,只能困守在王府之中一籌莫展,長吁短嘆,向着還沒來得及逃走的一夥官吏和心腹說道,早知如此,何必當初?若是段功不死,有他統領全軍,必定能夠將明軍擊退。可惜奸賊坑害忠臣,使得自己手下無將可使,無兵可用。此時一名梁王的心腹站了出來說道,段功雖然去世,不過大理段氏餘威尚在。雲南各府縣之中,以昆明、大理、曲靖三座城池之中兵馬最盛。眼下雖然曲靖已失,昆明城中的兵馬也因爲達裏麻兵敗而大半折損,但是大理城卻是完好無缺,城中幾員悍將驍勇善戰,若是急令大理城中的兵馬趕赴昆明助戰,必定能夠擋住三路明軍的圍攻。