廣武談判
公元前203年,劉邦和項羽在廣武談判。項羽要跟劉邦單獨決一雌雄,劉邦則羅列項羽的罪狀說:「當初我和你項羽一同受懷王之命,說定了先入關中者在關中為王,你違背了約定,讓我在蜀漢為王,這是第一條罪狀。你假托懷王之命,殺死卿子冠軍宋義,自任上將軍,這是第二條罪狀。你奉命援救了趙國,本應回報懷王,而你卻擅自劫持諸侯的軍隊入關,這是第三條罪狀。懷王當初約定入關後不准燒殺擄掠,你卻焚燬秦朝宮室,盜挖秦始皇的墳墓,私自收取秦地的財物,這是第四條罪狀。你強行殺掉已經投降的秦王子嬰,這是第五條罪狀。你欺瞞秦軍,在新安活埋二十萬人,卻封賞他們的降將,這是第六條罪狀。你把各諸侯的將領都封在好地方,卻趕走原來的諸侯王,使他們的臣下為爭奪王位而反叛,這是第七條罪狀。你把義帝趕出彭城,自己卻在那裡建都,又侵奪韓王的地盤,把梁、楚之地並在一起據為已有,這是第八條罪狀。你派人在江南秘密殺死義帝,這是第九條罪狀。你為人臣子卻謀殺君主,還殺害已經投降的人,你為政不公,不守信約,不容於天下,大逆不道,這是第十條罪狀。如今我率領義兵和諸侯們來討伐你,只讓那些刑徒就可以殺掉你,又何必勞累我來跟你挑戰呢?」項羽十分惱怒,用弩機射中了劉邦。劉邦被射中胸部,為了穩定軍心,劉邦卻捂著腳說:「這個強盜射中了我的腳趾!」劉邦因受箭傷而病倒,為了穩定軍心,張良硬是請他起來出去巡行,慰勞部隊。漢軍因此軍心穩定,臨危不亂,個個對楚軍嚴陣以待。楚軍終於沒能乘勢襲擊漢軍。
垓下決戰
隨著漢軍勢力逐漸強大,楚軍實力日益下降。項羽害怕了,擔心打不過劉邦,就跟劉邦約定,平分天下,鴻溝以西的地方劃歸漢,鴻溝以東的地方劃歸楚。項羽也送回了劉邦的家屬。
項羽罷兵返回東方,劉邦也想率軍回西方。張良、陳平勸劉邦說:「現在楚軍兵疲糧盡,何不索性將他們一網打盡,等他們元氣恢復以後,再想戰勝他們就很難了。」劉邦於是再次進兵追趕項羽,和韓信、彭越約定日期會合,共同攻擊楚軍。等劉邦到達會師地點,韓信、彭越卻沒有來會合。楚軍迎擊劉邦率領的漢軍,把漢軍打得大敗。劉邦又逃回營壘,深挖壕塹固守。劉邦採用張良的計策派使者封給韓信、彭越土地,使他們各自為戰,韓信、彭越這才前來會合。
公元前202年,劉邦和諸侯軍共同進攻楚軍,與項羽在垓下決戰。項羽最終戰敗自刎,漢軍平定了楚地。因為楚懷王當初封項羽為魯公,魯人對項羽非常忠心,還為項羽堅守,不肯降服。劉邦就率領諸侯軍北上,把項羽的頭給魯縣的父老們看,魯人這才投降。劉邦見魯人對項羽如此忠誠,就按照魯公這一封號的禮儀,把項羽葬在穀城。然後回師定陶,驅馬馳入齊王韓信的軍營,奪取了他的兵權。
劉邦稱帝
項羽敗亡後,諸侯將相們共同尊請劉邦稱帝。劉邦說:「我聽說皇帝的尊號,只有賢能的人才能據有,我可承擔不了皇帝的尊號。」大臣們都說:「大王從平民起事,誅伐暴逆,平定四海,有功的分賞土地封為王侯,如果大王不稱皇帝尊號,人們對大王的封賞就都不會相信。我們這班人願意以死相請求。」劉邦辭讓再三,實在推辭不過,於是稱帝。劉邦原定都洛陽,後來在劉敬、張良的勸說下,才定都長安。他又分封功臣到各地做諸侯。
一次,劉邦在洛陽南宮擺設酒宴。劉邦說:「列侯和各位將領,你們不能瞞我,都要說真心話。我之所以能取得天下,是因為什麼呢?項羽之所以失去天下,又是因為什麼呢?」高起、王陵回答說:「陛下傲慢而且好侮辱別人;項羽仁厚而且愛護別人。可是陛下派人攻打城池奪取土地,所攻下和降服的地方就分封給人們,跟天下人同享利益。而項羽卻妒賢嫉能,打了勝仗不給人家授功,奪得了土地不給人家好處,這就是他失去天下的原因。」劉邦說:「你們只知其一,不知其二。如果說運籌帷幄之中,決勝於千里之外,我比不上張良;鎮守國家,安撫百姓,供給糧餉,我比不上蕭何;統率百萬大軍,戰則必勝,攻則必取,我比不上韓信。這三個人都是人中的俊傑,但卻能為我所用,這就是我能夠取得天下的原因所在。項羽雖然有一位謀士范增卻不信用,這就是他被我擒獲的原因。」