开始
公元前202年(高祖五年)十月下旬,灌婴引兵进占彭城,同时攻下楚地许多地区。被刘邦封为淮南王的英布也遣将进入九江地区,诱降了守将、楚大司马周殷,随后合军北上进攻城父(今安徽涡阳东)。刘邦也由固陵东进,形势对楚极为不利,项羽被迫向东南撤退。十一月,项羽退至垓下(今安徽灵壁东南,一说在今河南鹿邑县境内),筑垒安营,整顿部队,恢复军力,此时楚军尚有约十万人。韩信、彭越、英布等会合刘邦后,汉军参战兵力已超过60万人,十二月(前202年初,当时以十月为岁首)在垓下将向江南撤退的十万楚军层层包围。
汉军以韩信亲率三十万人为主力,孔将军为左翼,费将军为右翼,刘邦坐镇后方,周勃、柴武等预备军在刘邦军后待命。韩信亲率汉军发动攻势,初战进攻受挫后退,在楚军准备追击时汉军左右两翼迂回夹击楚军,两军短兵相接陷入胶着,这时韩信带领大军翻身再战,楚军在三面夹击中被击败。项羽被迫退回垓下城。
四面楚歌
楚军虽败,但汉军亦伤亡惨重,僵持中,汉军夜间高唱楚歌。(传说中有称是张良用计,让汉军夜夜高唱楚歌以瓦解楚兵斗志,但《史记》中实际并无谁故意“用计”的记载,部分学者认为可能是同为楚人出身的刘邦部队看到数年征战,最后胜利在望,自发地唱起楚歌。)楚军自项羽以下莫不以为汉已尽得楚地,乃士气崩溃。项羽眼见大势已去,便乘夜率领八百精锐骑兵突围南逃。天明以后,汉军得知项羽突围,于是派遣五千骑兵追击。项羽渡过淮水后,仅剩百余骑相随,行至阴陵(今安徽定远西北)因迷路耽搁了时间(《史记》中交代因田父欺骗),被汉军追及,项羽突至东城(今安徽定远东南),手下仅剩二十八骑。
乌江决战
项羽指挥这二十八骑,来回冲阵,再次杀开一条血路,向南疾走,至乌江(今安徽和县东北长江边的乌江浦)边,自觉无颜见江东父老,乃令从骑皆下马,以短兵器与汉兵搏杀,项羽一人 杀汉军数百人,自己身亦被十余创,最后自刎而死,年31岁。项羽死后,汉军全歼八万楚军,楚地皆降汉,独项羽原封地的鲁人不肯投降(楚怀王曾封项羽为鲁公),后刘邦将项羽首级示鲁,鲁人乃降。至此,历时4年半之久的楚汉战争终以刘邦的胜利而告终。
公元前202年(汉高祖五年)二月甲午日,刘邦称帝于汜水北岸,建立西汉政权。(汉初承秦制,以十月为岁首。也即汉高祖五年的第1个月为十月,接下来为十一月、十二月、一月、二月、三月、四月、五月、六月、七月、八月、九月。二月为当年的第5个月。)