在鸿门宴上,刘邦表现出了极高的沉着与冷静。能够全身而退,除了张良、项伯、樊哙的力保之外,关键是刘邦的冷静与沉着。
鸿门宴之后,项羽便领兵西进,项籍入咸阳,烧阿房宫、杀秦王子婴。又分封各路将军为王,刘邦被封为汉王,领地是巴、蜀和汉中共四十一县,国都为南郑今陕西南郑。并封秦降将章邯、司马欣、董翳意为雍王、塞王、翟王,领关中地,以扼制刘邦。同时削减刘邦军队至三万人。项羽自称西楚霸王,掌握军队最高统帅权。楚怀王熊心被尊为义帝。后来项羽把义帝迁到郴县给杀了。
项羽分封,表面上看去论功行赏,但是实际上却是对原诸侯势力进行重新组合,对服从自己的予以分封行赏,并没有照顾原诸侯在本国的实力与影响。因此从一开始埋下乱源。而且他又拒绝了谋士自王关中的建议,坚决衣锦还乡。
汉元年二月,诸侯罢戏下,各回国。刘邦只好忍气吞声接受封号,于四月领兵入汉中、并烧毁栈道用木板架在悬崖上铺成的道路,以示再也无意东出,以麻痹项籍。同年五、六月份,齐国贵族后裔田荣不满分封,赶走齐王,杀胶东王,自立为齐王。11月,刘邦乘机挥军东出,拜韩信为大将,明修栈道,暗渡陈仓今陕西省宝鸡市东,重返关中,很快击败章邯,迫降司马欣、董翳,并用计欺骗项籍,使其相信自己取得关中后已心满意足,再也不会东进了。项籍放心去攻打田荣,对西边没有加强防范。最终则陷入齐地泥潭无法抽身。这样给了刘邦绝佳的机会。
汉二年205,刘邦在基本平定三秦后,准备东出与项羽争天下。他出关到陕,慰问那里的父老。三月,刘邦率军从临晋渡河,魏王豹将兵从。很快攻下河内,俘虏殷王司马卬,置河内郡。南渡平阴津到洛阳,降河南王申阳。这时有新城三老董公等挡在刘邦马前诉说义帝的死亡经过。汉王闻后,大哭一场,遂为义帝发丧,举哀三日。然后向各诸侯王发布项羽大逆无道的罪状,并以此为借口号召各诸侯王率兵与自己一起讨伐项羽为义帝报仇。从而正式拉开了四年楚汉战争的序幕。
公元前205年5月,刘邦乘项籍深陷于齐国,无力抽身的机会,率领诸侯联军56万一举攻占西楚都彭城。短暂的胜利是刘邦失去理智,天天与诸侯们喝酒庆祝。项羽闻之,急率轻骑兵3万回袭彭城,联军无备,一时被杀十万,溺水淹死十万,刘邦仅率数十骑逃脱,以汉为首的反楚联盟瓦解。
同年6月,刘邦率部退到荥阳,一路收集败兵,并派韩信于萧索之间击败了楚追兵,得以喘息,稳住了阵脚,遂重整军队,依托关中基地和有利地势与项羽长期抗争。7月,一直负隅顽抗的章邯终于兵败自杀,刘邦完全解除了后顾之忧且在逃往荥阳前便派人说服英布反楚,联络彭越扰楚后方派韩信开辟北方战场,攻魏俘魏王豹,破代,灭赵杀陈余。公元前205年冬,项羽发动反攻,围困荥阳,形势十分危急。刘邦用陈平反间计,使项羽怀疑范增,不用其谋,迫使范增怒而归乡。刘邦又派纪信装扮成自己去楚军诈降,乘机逃出荥阳。项籍加紧围攻荥阳,并夺取成皋。
为了减轻楚军对荥阳的压力,刘邦率军经武关、宛今南阳、叶今叶县南,想引诱项籍南下。为配合汉军行动,此时韩信也率军到达黄河北岸,声援荥阳。彭越正在进攻下邳今江苏邳州南。项籍被迫率军回救,刘邦乘机收复成皋。公元前204年7月,项籍以凌厉攻势拔荥阳,再夺成皋。
刘邦一面命汉军在巩县一带坚守,阻击楚军前进,一面命韩信组建新军击齐,派人入楚腹地协助彭越进攻睢阳县、外黄县今民权县等地,再次迫使项羽回救。公元前204年11月,刘邦用计再次收复成皋今荥阳汜水镇西北,斩杀了项羽大将曹咎。
项籍在击败彭越后,寻汉军主力决战不成,屯兵广武今荥阳北与刘邦形成对峙。不久,韩信在潍水之战中歼灭齐楚联军,完成对楚侧翼的战略迂回,又派灌婴率军一部直奔彭城。项籍腹背受敌,兵疲粮尽,遂与汉订盟,以鸿沟为界,中分天下,东归楚,西归汉。公元前203年10月,项籍引兵东归。
楚、汉订盟后,刘邦本想退兵,在张良、陈平提醒下,下令全力追击楚军。公元前203年11月,两军战于固陵今淮阳西北,项羽小胜。公元前202年1月,刘邦以封赏笼络韩信、彭越、黥布等,垓下一战重创楚军。
公元前202年1月,刘邦、韩信、刘贾、彭越、英布等各路汉军约计70万人与10万久战疲劳的楚军于垓下今安徽灵璧县南展开决战。汉军以韩信率军居中,将军孔熙为左翼、陈贺为右翼,刘邦率部跟进,将军周勃断后。
韩信挥军进攻,采用诱敌深入战术,前军先诈败,信引兵后退,命左、右翼军包抄攻击楚军后部步军。楚军久战疲劳后军迎战不利,汉军将楚后军与项羽前军骑士分割两半,韩信再指挥全军反击,楚军大败,阵亡四万余,被俘两万,被打散两万,仅剩不到两万伤兵随项羽退回阵中。
后楚军退入壁垒坚守,被汉军重重包围。楚军兵疲食尽。韩信命汉军士卒夜唱楚歌,歌云:“人心都向楚,天下已属刘韩信屯垓下,要斩霸王头!”。
致使楚军士卒思乡厌战,军心瓦解,项羽只有率800人突围至乌江今安徽省和县境,这时项羽身边只剩下28骑了,一亭长愿带项羽逃至江东重振霸业,遭项羽拒绝。项羽带着28骑大战汉军,最后全军覆没,项羽不愿被俘受辱,于是在乌江自刭而死。