汉高帝元年(公元前206年)十月,沛公刘邦来到霸上。秦王子婴乘坐着白马和素色的车,把皇帝玺印、符、节等封好,在路边投降。将领中有人说要把秦王杀掉。沛公说:“当初楚怀王派遣我来到这里,就是因为我能够宽容。况且秦王已经投降,杀了他是不吉利的。”
沛公进入咸阳,将领们都争着奔向藏金玉财物的府库去抢分财物,只有萧何去秦丞相府收取秦国的地图户籍本藏起来,这样沛公就能够详细了解天下险要隘塞、户口多少、实力强弱的地方。沛公看见秦朝的宫室、帷帐、畜养的狗马、贵重的珍宝及众多的美女妃嫔,便想留居在宫里。樊哙劝说道:“沛公你是想拥有天下呢?还是要做富翁呢?这些奢华的物品,都是促使秦朝灭亡的东西,沛公你要它有什么用!希望你赶快返回霸上,不要留居在这宫中!”沛公不听从樊哙的规劝。张良说:“秦王朝暴虐无道,所以沛公你讨伐它才能来到这里。为天下百姓消灭残暴的公贼,应该以朴素为本。现在刚刚进入秦国,就安享秦国的逸乐,这就是‘帮助暴桀为虐’。忠言逆耳利于行,良药苦口利于病,希望沛公听从樊哙所说的话!”沛公于是带领军队返回,驻扎在霸上。
十一月,沛公召集各县的父老、豪杰,对他们说:“父老们苦受秦国苛刻的法令已经很久了!我与诸侯约定,先进入关中的称王。我现在与父老们约法三章:杀人的处死,杀伤人的以及偷盗的按情节轻重判罪。其余的秦朝法律条文一概废除,所有官吏、人民都像过去一样安居不迁徙。我之所以来到这里,是要为父老们除去祸害,不是要进行侵扰虐待,你们不要害怕!”于是派人与秦朝官吏一起巡行到各县、各乡、各邑,通告晓谕老百姓。秦朝的百姓都很高兴,争先恐后地送来牛、羊及酒食犒劳军士。沛公又推让不接受,说:“仓库里的粮食很多,并不缺乏,不想让百姓破费。”秦朝的百姓听了更加高兴,只怕沛公不当秦王。有人对沛公说:“秦地的富庶是天下的十倍,地形很有利。沛公你可以赶快派兵镇守函谷关,不要让诸侯军入关。逐渐征收关中兵以增加兵员,抵抗诸侯军。”沛公认为很有道理,便依计行事。没过多久项羽带兵来到函谷关,关门紧闭。又听说沛公已平定关中,项羽大怒,派兵攻下函谷关。十二月,项羽的军队到达戏水边。沛公的左司马曹无伤想求得封赏,便差人对项羽说:“沛公打算在关中称王,叫秦王子婴做相国,秦国的珍宝都归他所有了。”项羽愤怒至极,便飨食士卒,准备第二天早上去攻击沛公的军队。这时,项羽有四十万兵,号称百万,驻在新丰鸿门;沛公有兵十万,号称二十万,驻军霸上。
范增劝项羽赶快进攻,不要错失掉良机。楚国左尹项伯,是项羽的叔父,向来同张良很好。于是连夜骑马奔到沛公驻军的营地,私下会见张良,把这些事详细告诉他,让张良离开刘邦以保自身。张良却把此事告诉了沛公。在张良的谋划下,沛公召见项伯,假称自己并无反叛项羽之心。项伯回去后,把沛公的话报告给项羽,并说沛公破关中有功,如果去攻击他,会陷自己于不义。
第二天早晨,沛公带领随从一百多人马来鸿门见项羽,向项羽道歉说:“我与将军协力攻打秦军,将军转战黄河以北,我征战黄河以南,但没想到能先进关攻破秦国,得以在这里重见将军。现在有小人从中挑拨,使得将军与我之间产生了嫌隙。”项羽说:“这是沛公左司马曹无伤讲的。”项羽便留下沛公共同宴饮。范增多次使眼色暗示项羽,再三拿起佩挂在身上的玉玦示意项羽做决断,项羽沉默不理会。范增起身。出去召来项庄,对他说:“君主为人下不了狠心,你进去到席前敬酒,敬完酒,便请求表演舞剑助兴,趁机刺杀沛公。否则,你们这些人将来都会被他俘虏!”项庄随即进帐敬酒。敬酒完毕,说:“军中没有什么可以娱乐的,请让我表演舞剑吧。”项羽说:“很好。”项庄拔剑起舞。项伯也拔出剑起舞,用身体去掩护沛公,项庄没有机会刺中沛公。
于是张良到军营门口去见樊哙。樊哙说:“事情怎么样?”张良说:“现在项庄拔出剑起舞,想要取沛公性命。”樊哙说:“这太紧急了,让我进去,同沛公生死与共!”樊哙立即带剑持盾闯进军门。军门守卫不让他进去,樊哙把盾牌横着一撞,卫士跌倒在地。樊哙便冲进去,瞪着眼睛怒视项羽,头发直竖起来,眼眶都要裂开了。项羽警惕地握着剑直起身来问:“你是做什么的?”张良说:“是沛公随车的卫士樊哙。”项羽说:“是位壮士!赐他一杯酒!”便送上一斗酒。樊哙拜谢后,一口气喝完酒。项羽说:“赏他一条猪腿!”属下又送上一条生猪腿。樊哙把盾牌倒扣在地上,把猪腿放在上面,拔出剑把猪腿切开吃了。项羽说:“壮士还能饮酒吗?”樊哙说:“我死都不怕,一杯酒还会推辞吗?那秦王有虎狼般的野心,杀人惟恐不够多,罚人惟恐不够数,天下的人都反叛他。怀王同将领们约定:‘谁先攻破秦国进入咸阳,就在那里称王。’现在沛公先攻破秦国,进入咸阳,东西丝毫不敢占有,把军队撤回霸上驻扎,等待将军你的到来。这样劳苦功高,没有得到封爵的赏赐,而你反听信小人的挑拨,想诛杀有功的人,这是已灭亡了的暴秦的继续罢了。我私下以为将军这种做法不可取!”项羽一时无言以对,说:“坐下!”樊哙挨着张良坐着。
过了一会儿,沛公起来上厕所,趁机招呼樊哙出去。沛公说:“现在走,没有告辞,怎么办?”樊哙说:“现在人家准备好了刀和砧板,我们是刀下的鱼肉,还告辞做什么?”于是便离开鸿门。鸿门距离霸上四十里,沛公便弃置车骑不用,独自骑马脱身而逃。樊哙等人手持刀剑、盾牌步行,从骊山脚下经过芷阳,抄小道赶回霸上。留下张良去辞谢项羽,要他把白璧献给项羽,把玉斗送给亚父范增。沛公对张良说:“从这条道路到我们军中,不过二十里而已。估计我已经回到了军中,你便可进去辞谢。”沛公离开鸿门,从小路回到了军中,张良才进帐向项羽辞谢说:“沛公不胜酒力,不能亲自来告辞,他让小臣张良奉上白璧一双,拜献给将军;玉斗一双,拜送给亚父。”项羽说:“沛公在哪里?”张良说:“听说大王有意要责备他,所以一个人脱身回去,已经到军中了。”项羽接过白璧,放在座位上。亚父接受了玉斗,放在地上,拔出剑来击碎,说:“唉!这小子不值得同他谋大事!夺取将军天下的人,一定是沛公啊,我们这些人将来都要被他俘虏了!”沛公回到军中,立即诛杀了曹无伤。