分封諸侯
項羽消滅了秦軍主力後,即率諸侯軍向關中挺進,行至函谷關,發現有兵守關,項羽軍無法通過,又聽說劉邦已經攻破鹹陽,項羽大怒,派當陽君攻破函谷關,四十萬大軍駐紮于新豐鴻門,劉邦軍十萬駐紮灞上。
劉邦左司馬曹無傷派人告訴項羽,說劉邦想在關中稱王,并且用子嬰爲相,珍寶全部占有。範增也告訴項羽,說劉邦在山東時貪财好色,入關後卻不取财物女人,志向不小,應該趁早殺了他。
項羽叔父項伯與劉邦手下的張良關系友好,連夜前往劉邦軍見張良,想要勸張良逃走,卻反被張良拉攏。項伯回來後告訴項羽,劉邦攻破鹹陽有大功,如果進攻他是不義之舉,項羽表示贊同。
劉邦第二天率領一百多騎兵來見項羽,範增暗示項羽殺掉劉邦,但項羽爲人不忍,默然不應。于是,範增讓項莊于席間舞劍,伺機刺殺劉邦,而項伯也拔劍起舞,擋住項莊。張良見狀,至軍門找樊哙前來。
樊哙強行進賬,對項羽進行一番了說辭,項羽無言以對。于是劉邦伺機逃脫。他留張良将白璧玉鬥獻給項羽和範增,自己以上廁所爲由,扔下車騎,隻帶樊哙、夏侯嬰等人從郦山道逃回霸上。項羽接受了白璧放在桌上,而範增卻将玉鬥摔在地上拔劍砍破,歎道:“奪項羽天下的人,一定是劉邦。”
項羽進入鹹陽後,引兵屠戮鹹陽,殺秦王子嬰,火燒秦王宮,大火連續燒了三個月沒有滅,搜集寶物美女準備回江東,有人勸項羽說關中富饒,可以成王霸之業。但項羽見秦王宮都已經被毀壞,自己又迫切的想回到江東,于是不聽。那人又說,都說楚人性情殘暴,果然是這樣。項羽聽到後,把那個人殺了。
項羽在得到楚懷王的同意後,自立爲西楚霸王,封劉邦爲漢王,章邯爲雍王,司馬欣爲塞王,董翳爲翟王,魏王豹爲西魏王,申陽爲河南王,司馬殷王,趙王歇爲代王,張耳爲常山王,當陽君英布爲九江王,吳芮爲衡山王,共敖爲臨江王,燕王韓廣爲遼東王,臧荼[zāngshu]爲燕王,齊王田市爲膠東王,田都爲齊王,田安爲濟北王等十八個諸侯王。
彭城之戰
項羽分封完諸侯,諸侯各前往封國,項羽将義帝遷往長沙郴縣,暗中令衡山王吳芮、臨江王共敖于途中将義帝殺死。
漢元年(公元前206年)八月,齊、趙諸侯叛亂,項羽率軍前往平亂,聽聞劉邦已定關中,非常憤怒,封鄭昌爲韓王,派其前往阻擋劉邦,令蕭公角阻擊彭越。彭越擊敗蕭公角後,張良僞作韓王書給項羽,說劉邦隻想得關中,不會向東用兵,又僞作齊王、梁王書給項羽說齊王準本和梁王齊心協力滅掉楚國。于是項羽放心攻打齊國。項羽征召九江王英布,英布托病不出,派遣手下将領隻率領幾千人前往,項羽因此怨恨英布。
漢二年(公元前205年)冬,項羽北至城陽,田榮引兵會戰,被項羽擊敗,田榮逃往平原,被平原民殺死。項羽燒毀齊國房屋,将降卒全部坑殺。把擄掠的男女老幼全部遷往北海,死傷無數,齊國人因此聚在一起反叛,田橫趁機收編齊兵數萬反攻城陽,項羽久攻不下。
劉邦率領五路諸侯兵馬有五十六萬,向東攻打楚國,項羽聽聞後,留部将繼續攻齊,自己親率精兵三萬去救援彭城。劉邦攻下彭城後搜集珍寶美人,大擺宴會。項羽率軍從早晨開始,由蕭縣從西打到東,中午時打到彭城,大破劉邦軍,殺死漢兵十餘萬。劉邦軍逃往南山,項羽率軍追到靈壁東阻攔,漢兵落入睢水十餘萬,睢水爲之不流。項羽把劉邦包圍了三層,卻被一陣大風吹亂楚軍,劉邦趁機率領數十騎兵走脫。
彭城之戰
劉邦逃往下邑,收集敗亡散卒至荥陽,各路敗軍先後前來會合,蕭何也發動關中沒有登記在冊的百姓前來投奔劉邦,劉邦因此軍勢得以重振。項羽乘勝來戰,無法取勝。劉邦彭城大敗後,諸侯反叛劉邦,歸附項羽。
漢三年(公元前204年),劉邦在荥陽修築甬道用以過河取敖地的糧食,項羽軍多次侵奪甬道,劉邦軍無法取得糧草補充,非常害怕,于是,與項羽議和,項羽同意。
鴻溝和議
項羽在範增的建議下,與範增合圍荥陽,打算把劉邦消滅。劉邦非常害怕,采取陳平的計策,離間項羽和範增,項羽于是剝奪了範增的權利。範增沒有想到項羽竟然會懷疑自己和劉邦有勾結,十分氣憤,于是告老還鄉,但在途中病死。
項羽将荥陽的劉邦四面圍定攻打,劉邦軍勢非常危急,部将紀信于是引兩千軍乘黃車假扮劉邦出城,說劉邦願意投降,項羽趕來見到紀信問劉邦在哪,紀信說劉邦已經逃走了,項羽于是将紀信燒死。
漢四年(公元前203年),項羽攻下荥陽,處死荥陽守将周苛、枞公。而劉邦走宛、葉,派人說服英布背叛項羽,進入成臯。項羽得知後迅速率兵前來攻打,奪下成臯,一路西進。劉邦逃亡鞏縣,派重兵阻擋,項羽無法挺進。
此時,彭越渡河攻擊東阿,楚将薛公兵敗身死,項羽于是親自率軍攻打彭越,彭越敗走,但成臯卻被劉邦趁機奪下。項羽回軍與劉邦對峙于廣武,相持了幾個月。