次日黎明,秦军的攻城器械已经全部造好了。司马夷就率领大军杀到城下。这时却发现城上的士兵一动不动,仔细看时全都是穿着军服的假人。司马夷觉得非常奇怪,传令军士径直攻进城中。这才发现城头上擂鼓的全是活羊,沛公的军队早已走得无影无踪。又发现城墙上还写着两句话:义军害怕伤到百姓,因此从北门走出。如果‘死马’将军有胆量就来追赶,若无胆量,此城就是送给‘死马’的礼物,这就叫‘羊鼓计’气死‘死马将’。司马夷看了这话气得暴跳如雷,就立即率领大队出城追赶。陈濞劝阻道:“怕是他们在搞什么阴谋。”司马夷怒道:“他们逃走了怕百姓耻笑,才故意写了这样的话。如果不追,正中其计。”于是率领军士出北门追赶。秦军出城后来到一个地方。司马夷看见前方有一片低凹的平地,上面堆满了许多衣物辎重,有点疑惑,就勒马问向导官这是什么地方。向导官回答:“此地叫‘狐父’。”陈濞对司马夷道:“此地四周都是茂密的树林,隐隐之间有一股杀气,又不见刘邦的影子,万一中了埋伏,如何是好?”司马夷笑道:“刘邦是个村夫,哪会用伏兵?这些东西肯定是他们逃命时丢下的!”就让军士把物品抢来,根本不听劝告。
秦军于是乱哄哄地去抢东西。忽然四周金鼓齐鸣,周围的草丛中伏兵一齐杀了出来,正是沛公的兵马。沛公和夏侯婴从正面杀来,曹参从左翼,周勃从右翼,周苛和曹无伤从后面,四路兵马合力向前冲杀。司马夷大叫:“中计啦!”连忙传令拼死应战。楚军后备部队先用箭射,然后冲锋。一时间万箭齐发,秦国的军士纷纷倒地,军队顿时大乱。司马夷惊慌失措,众将保护他往东奔逃。曹参率军径直追来。秦国的副将陈兰看见曹参追赶司马夷,挺起兵器拦截。曹参挥起开天刀,忿怒地把陈兰砍死在马下。周勃杀了拦他的郭西。夏侯婴一矛刺穿了刘塘的喉咙。周苛和曹无伤一起把吴闲杀了。秦军的骑队都围在中间,多数人被射死。司马夷奋力杀出重围,想去萧县和丁、魏等人的兵马汇合。沛公却在东面亲自堵截,司马夷见冲不过去,又见楚军将领一齐杀到,只好掉转马头向西北方向逃窜。陈濞和周灶陷入重围,被楚军活捉了。
沛公见司马夷大败,对张良道:“司马夷虽然吃了败仗,可大部队还在留县,应该怎样彻底打败他们?”张良说:“沛公不用担心,司马夷不久一定会死掉,他的那些人马,也会烟消云散!”沛公感到非常吃惊,忙问张良有何高见。张良笑道:“我已经派人扮成秦国的军士向丁礼和魏选报告说司马夷在狐父战死。丁、魏二人听到这个消息,必定不敢贸然进兵。我又派快马传达秦嘉,叫他出彭城直攻萧县的秦军。还派人向萧何送信,让他派纪信率领一支兵马从北面佯攻。您再亲自率领一军去夺萧县。三路军马一起夹击,秦军虽然众多,岂能不败?”沛公就让曹参和张良驻守砀县。自己率领樊哙、周勃等将去夺萧县。这时纪信率军从北杀到,秦嘉从东杀到,三路楚军一齐夹攻秦军。秦国将领果然都害怕了,丁礼和魏选等人就率领秦军向西逃走。沛公和秦嘉率军趁胜追杀,一直杀到祁城的善置驿才停下。楚军大获全胜,俘虏了很多秦军,还缴获了大批的锱重。
随后沛公准备和秦嘉联合起来追杀秦军,可是秦嘉却以担心楚王为由,急匆匆和沛公分手,回留城去了。沛公见失去了歼灭秦军的机会,非常痛惜,又见自己势单力薄,就让纪信原回沛县把守,樊哙守住萧县,自己率领大队人马回砀县和张良会师。军队来到砀县城下,远远地看见张良和曹参站在城门下面迎接。将士们都欢天喜地,各自讲述了战斗的经过。沛公拉着张良的手说:“先生运筹帷幄,决胜千里,真是姜子牙在世,孙武子复生啊!”张良笑道:“不是将士们杀退秦军,我就是有天大的谋略也是没用啊!”沛公就高兴得不知说什么才好。
张良就请沛公进城,大家来到府堂上坐下。沛公问张良,秦嘉为何急匆匆回去了。张良笑道:“此人心怀鬼胎,一定想别的事,说不定回去后还会弄出点什么事来,不过此人成不了气候。书上说‘小人常戚戚。’说的就是他这样的人啊!”刘邦又令军士押来陈濞和周灶,呵斥道:“我刘邦倡举大义,消灭残暴的秦国,可不喜欢随便杀人。你们二人已经作了俘虏,就应该和我共图大事!”陈、周二人见沛公如此宽宏大量,不但不杀,还要共图大事,很受感动,就投降了沛公。沛公又把投降的秦军改编成楚军,约有六千余人,实力大增。