期间,曾经有人劝过他,让他小心。但刘邦却不以为意。他想当然的认为,自己有如此巨大的“飞龙骑脸”的优势,难道还能败?然而,刘邦还是高兴的太早了,项羽是一般人吗?刘邦错就错在,他把项羽当成了凡夫俗子。
项羽听说老家被抄后,一点也不急,大家都劝他平定齐地,收拢主力后再还击。但项羽否定了这种建议。他认为:彭城附近是无险可守的通旷地形,反楚联军虽然人多,但多是乌合之众,诸侯王是在刘邦威逼之下才勉强归顺于他的,诸侯军必然不会死战。并且现在彭城才刚刚丢,楚军士气还在。所以反攻不能拖延,必须要尽快行动。以骑兵快速机动的优势,千里奔袭,打反楚联军一个措手不及。
因此,项羽丢下步兵为主的大队人马,让一众部将继续平定齐地,而他自己则仅率三万精骑火速回师。
当时刘邦其实在项羽可能会回师的必经之路留了守备兵力,但是项羽根本没上套。刘邦在东北面布防(齐国在彭城东北方向),项羽则从西面杀回,在击破樊哙后,绕到了汉军布防的背后。
防线撕开了个大口子,而彭城附近的诸侯联军又不知道,没有防备。于是接下来,就是楚军的大屠杀了。
楚军骑军乘着拂晓雾色,强行突击彭城附近的汉军主阵地,犹如嗜血猛虎杀入羊群。汉军主力皆是步兵,并无强大骑兵或战车兵来克制楚军的骑兵优势,因此在楚军如暴风雷电般的攻势下,汉军从早晨战到中午,只抵抗了半天时间,战斗意志便告崩溃了。
刘邦看此情形,知道没戏了,他当即就带着一干心腹跑路。
刘邦抢先跑了,诸侯联军的指挥中枢也随之瞬间瘫痪,在大溃退中,诸侯联军被楚军一路追杀,丢盔弃甲,溃不成军。仅在谷水和泗水两河之河畔,诸侯联军被杀者和被迫溺水而死者就超过了十余万人。
有诸侯联军垫背,刘邦逃出了追击。汉军在南撤至彭城西南部的吕梁山区后,刘邦下令收拾残部,想凭吕梁山区的险峻地势来抵御楚军骑兵追击。然而让刘邦没想到的是,楚军杀红了眼,攻势太过迅疾猛烈,把汉军新建立的阵型又直接摧垮了。
没办法,刘邦只能继续逃。溃逃中,汉军被楚军追杀,在灵壁以东睢水河畔,汉军被杀和被河水溺死者,也高达十万。
刘邦看此情形,都蒙圈了。之前胜利来的太快让他迷失了心智,现在失败也来的太快让他连人性也丧失了。由于害怕被追上,刘邦在跑路期间多次把后来的汉惠帝刘盈以及鲁元公主扔下马车。夏侯婴不忍直视刘邦的丑态,就又把两个孩子救了上来。刘邦为此还大骂夏侯婴多管闲事。
当时的刘邦,已经不要脸了。
不过好在刘邦命大,汉军在溃败中,西北方向突起了飓风,大风卷杂着沙尘暴,冲乱了楚军的阵型,令刘邦得以顺利逃出。
后来刘邦甩开大部队,抄小路逃到下邑,碰到了留守在那里的吕泽(吕雉大哥),在吕泽部队的护卫下,向西撤退,一路上刘邦收集汉军士卒。撤至到荥阳时,各路败军都已会集在这里,萧何也把关中没有载入兵役名册的老弱人丁也全部都带到荥阳,并且韩信率汉军在京索一战中击退楚军追兵,刘邦这才稳住阵脚。
之后,刘邦采纳了张良的建议,制定了正面坚守、侧翼发展、敌后袭扰的战略方针。由刘邦在荥阳做诱饵钓住项羽,韩信则率偏师进攻河北,收拾见刘邦惨败,就又投降了项羽的魏王魏豹和赵王陈馀等诸侯。
后来韩信灭西魏,定赵国,平齐国,刘邦在彭城之战后的颓势,才又重新逆转了过来。