项羽的这番计划被其叔父项伯知道后,项伯偷偷地到恩人张良处,劝张良跟他一起走,不要跟刘邦一块儿等死。张良不肯丢下刘邦,立即禀报刘邦。刘邦大惊,接受张良的建议,把项伯请来,像对待兄长那样接待他,亲自向他敬酒祝寿,并攀了儿女亲家。刘邦还向项伯表示:“我进关以来,秋毫无犯,保管好户籍册,封存好府库,就是专等着项将军到来,哪里敢反对项将军呢?您回去以后,请转告项将军,我刘邦决不敢忘恩负义。”项伯说:“明天早上你必须早一点来向项王谢罪。”刘邦满口答应。于是,项伯又连夜返回军营,把刘邦的话告诉了项羽,并且劝项羽说:“要不是沛公首先攻进关中,你哪能轻易进来呢?人家有大功你反而要攻打他,这是多么不应该呀!不如乘明天来谢罪的机会,好好地招待他。”项羽答应了。
第二天早晨,刘邦带领着100多名随从,骑着马,来到鸿门。他一见到项羽,便主动谢罪说:“我和将军同心反秦,将军在黄河以北作战,我在黄河以南作战。没有想到,我能首先攻入关中,推翻秦朝,并有机会在这里再次和将军相见。可是,现在有人想从中挑拨,让将军和我发生误会。”项羽听到这里,便脱口答道:“这都是曹无伤告诉我的,不然,我怎么能误会到这个地步!”说罢就在鸿门设宴款待刘邦。
酒宴摆好,各就座位。项羽、项伯在西面,范增坐在北面,刘邦坐在南面,张良坐在东面。宾主边吃边谈。范增多次向项羽使眼色,并举起佩戴在腰带上的玉停暗示项羽杀掉刘邦。项羽却置之不理。范增便出去找到项羽的叔伯兄弟项庄,对他说:“项王不忍心杀死刘邦。
你现在就到酒宴上去敬酒祝寿,然后,你就请求舞剑助兴,并乘机把刘邦刺死,否则,你我将来都要成为刘邦的俘虏。”于是,项庄来到酒席宴前敬酒祝寿,并对项羽说:“项王跟沛公饮酒,军营里没有什么可以娱乐的,让我来舞剑给您们助兴。”就在席前舞起剑来,项伯看出项庄舞剑的用意,就拔出剑,与项庄对舞,总是用身体保护刘邦,使项庄没有机会下手。
张良也看出气氛不对,连忙离开座席,跑到军营门外去找樊哙。樊哙一见张良就迫不及待地问:“怎么样了?”张良说:“项庄舞剑,意在沛公。”樊哙一听就沉不住气了,一手持剑,一手拿着盾牌直往营门闯。卫士们上前阻挡,樊哙侧着盾牌一撞,把卫士们撞倒在地。三步并做两步来到宴会厅,面对项羽怒目而视。
项羽一见樊哙,大吃一惊,立即直起身子,按着宝剑,大声道:“你是干什么的?”张良连忙说道:“他是沛公的卫士樊哙。”项羽说:“好一个壮士!赏他一大碗酒!”樊哙拜谢,一饮而尽。项羽又说:“赏他一条猪腿!”手下的人给了他一条生猪腿。樊哙把盾牌扣在地上,把生猪腿放在盾牌上,用剑切成几块,大嚼起来。项羽很赞赏,说:“壮士!还能喝酒吗?”樊哙答道:“我死都不怕,还在乎几杯酒?”接着,他又义正辞严地对项羽说:“秦王就像虎狼一样残暴,杀人惟恐少了,用刑惟恐轻了,弄得天下人都反对他。入关之前,楚怀王与诸将约定:‘谁先击败秦军攻入咸阳,就封谁为王’。如今,沛公先进了咸阳,秋毫无犯。他把宫殿府库封起来,退回灞上,等待大王。他派兵守关,是为了防备盗贼和非常事件。沛公这样劳苦功高,大王不仅没有封赏他,反而听信小人的谗言,要杀害有功之人。这跟亡秦有什么不同?我认为大王不应该这样!”项羽听了这番话,不知道该怎样回答,只是说:“坐吧,坐吧。”樊哙就在张良的身边坐下。
一会儿,刘邦推说要去厕所,樊哙、张良先后跟出。刘邦决定让张良留下来,向项羽辞谢,并把带来的一对白璧和一对玉斗交给张良,要他分别献给项羽和范增。刘邦丢下随从、车骑,骑上一匹快马,由樊哙等四员大将护卫抄小路从骊山经芷阳(今陕西长安县东白鹿原霸川上的西阪),奔回灞上军营。
张良估计刘邦快到军营了,便回到酒宴上向项羽辞谢。他对项羽说:“沛公酒量小,醉了,不能亲自来辞行。特意让我奉上白璧一双,献给大王,玉斗一双献给范将军。”项羽接过白璧,放在席上。范增接过玉斗却放在地上,然后拔出剑来,把它击得粉碎,并气愤地骂道:“唉!跟蠢人不能共事。将来夺取项王天下的,一定是沛公。我们就等着做人家的俘虏吧!”
刘邦回到军中,立即杀掉了曹无伤。项羽在处置刘邦问题上之所以如此犹豫,是考虑到刘邦毕竟有入关之功,缺乏将其翦除的借口,而且刘邦这时的实力,也还不足以引起项羽严重的注意。不过,从这件事中也可以看出,项羽缺乏做政治家的才能。
彭城之战鸿门宴以后不几天,项羽就和各路将领带领着人马进入咸阳,大肆屠杀。他处死秦王子婴,火烧了秦朝的宫室。那个“五步一楼,十步一阁”的阿房宫也被付之一炬,足足烧了三个月。项羽收罗了秦宫财宝和美女准备带回彭城。看到项羽的这些作法,关中人民大失所望。有位叫韩生的劝他在关中建都,项羽却坚持要回故乡耀祖光宗,拒绝了韩生的建议。他说:“富贵不归故乡,如衣绣夜行,有谁知道呢!”当时,有人在背后讽刺项羽说:“人们说楚国人就像穿着大衣,戴着人帽的猕猴,外表像人,其实不是人。现在看来,果然如此。”这话传到项羽的耳朵里,他就把这个人抓来活活烹死。
不久,楚怀王准备“照原来约定的办”,即应该封刘邦为关中王。对此,项羽十分不满。他对诸将说:“楚怀王纯粹是我家所扶立起来的,一点功劳也没有,凭什么还让他号令天下?”遂废置怀王于江南郴邑(今湖南省郴县),虚称“义帝”,实际上是有名无实。
公元前206年二月,项羽自立为西楚霸王,把原来楚国、魏国的大部分地区列入自己的封地(今浙江、江苏、山东西部、河南东部),建都彭城。项羽担心刘邦,不想封他为关中王,但是又不愿意落个不遵守盟约的坏名声,便跟范增商量,把刘邦封为汉王,让他占有汉中、巴蜀地区(今陕西南部、四川北部),定都于南郑(今陕西南郑)。为了阻止刘邦通过关中向东扩展,项羽又把关中地区一分为三,封秦朝降将章邯为雍王,建都废丘(今陕西兴平南);封司马欣为塞王,建都栎阳(今陕西临潼东北);董翳为翟王,建都高奴(今陕西延安),让他们封住刘邦东进的道路。此外,他在关东地区还分封了14个诸侯王。项羽自称各诸侯王的盟主,地位在各诸侯王之上。
项羽分封诸侯,破坏了秦始皇以来的统一局面,违背了人民希望统一的迫切愿望。同时,他分封诸侯没有一个统一的标准,夹杂着许多个人的好恶。由于分封不公平,没有受封或者封地不多的人,更加不满,酿成了割据势力之间的矛盾和斗争。这年四月,受封的诸王各自领兵回到自己的封地,项羽也东归彭城。这时,义帝还在彭城。项羽催促他赶快迁到都城郴邑。义帝出发后,项羽于十月命九江王英布等追杀义帝于长江。
不久,关东地区便爆发了诸侯王之间的局部战争。田荣首先发难,他领兵赶走了齐王田都,杀了胶东王田市和济北王田安,自称齐王,并与彭越联合起来,反对项羽。陈余也没有被封,便跟田荣联合起来,打败常山王张耳的军队,赶走了张耳。
项羽得到齐、赵两地反叛的消息以后,决定首先进攻为患最甚的田荣,立即调九江王英布领兵伐齐。没想到英布推说有病,不肯亲自出战,只派他手下的将领带着几千人去援助项羽。
项羽因此怨恨英布。公元前205年正月,项羽亲自领兵北上,在城阳(今山东莒县)与田荣会战。田荣自然不是项羽的对手,战败,逃到平原(今山东平原县南),被百姓杀死。项羽乘胜前进,一直向东打到北海(今山东淄博以东、掖县以西地区)一带。在齐国境内,项羽烧毁房屋,夷平城市,活埋降兵,掳掠妇女,结果遭到齐国人民的反抗。田荣的弟弟田横也集聚了齐国散失的士卒几万人,占据城阳,攻击楚军,项羽屡战不胜,被拖在城阳一带。
这时,刘邦已拜韩信为将。他采纳韩信“决策东向,争权天下”的建议,乘东方楚、齐之战已启,三秦王(章邯、司马欣、董翳)立足未定,汉军将士又急切期望东归,于汉元年(公元前206年)八月潜兵北进。首先打败雍王章邯,占领关中大片地盘。不久,塞王司马欣、翟王董翳也都投降了刘邦。刘邦于十一月定都栎阳。为了阻止刘邦东进,项羽又封郑昌为韩王,驻兵阳翟(今河南禹县),对抗刘邦。刘邦也放出风声说,他只想得到关中,无意向东发展;真正想灭掉楚国的是齐国和赵国。项羽上当,专心攻打齐国,刘邦在平定关中以后,继续出关东进,河南王申阳被迫投降,韩王郑昌也被刘邦打败。
汉二年(公元前205年)三月,当项羽与田横在城阳交战之际,魏王豹投降刘邦,殷王司马ヒ脖环虏,刘邦进占洛阳,同时又为义帝发丧,派使者遍告诸王,说项羽杀死义帝,大逆不道,号召各路诸侯一起讨伐项羽。这年四月,刘邦领着河南王、魏王、殷王等五个诸侯王的军队,乘项羽后方空虚之际,一举攻入彭城,并收罗项羽宫中的财宝和美女,每天设宴饮酒,庆祝胜利。消息传来,项羽让部将领兵继续进攻城阳,亲自率领3万精兵向南进发,昼夜兼程地赶回彭城,奔袭刘邦。彭城道上,烟尘滚滚。楚汉之间第一次大规模的交战即将开始。
这时,项羽援救彭城的队伍虽是精兵,但只有3万;刘邦在彭城的军队却有56万。双方的兵力悬殊很大。不过,刘邦仗恃着兵多将广,沉醉于眼前的胜利,麻痹、轻敌;项羽却急如星火,决心以少胜多,收复失地。所以汉军军心松懈,失于戒备;楚军却斗志旺盛,求胜心切。
四月的一天早晨,项羽率领楚军从彭城以西的萧县(今江苏萧县西北)向东攻打刘邦的汉军,利用骑兵机动性大的特点,采取包围闪击战术,猛攻刘邦联军侧背。中午,楚军在彭城把汉军打得大败,一直追到彭城东北的泗水,汉军无路可走,纷纷落入水中,淹死、战死的汉兵有10多万人。刘邦被迫撤离彭城,向西南方向溃逃。楚军追到彭城西南灵壁(今安徽宿县西北)以东的睢水边。前有睢水拦路,后有楚军掩杀,汉军死亡不计其数,10多万人只好跳进睢水逃命,但是人多拥挤,加之水深流急,死伤枕藉,睢水为之断流。刘邦的父亲和妻子被俘,刘邦自己也险些被俘,只率数十名骑兵突出重围。
彭城之战是楚汉之争的第一次重大战役。在这次战役中,楚军在项羽的指挥下,以少胜多,击溃了汉军,很快收复了彭城,打了一个漂亮仗。已经投奔刘邦的诸侯,这时又纷纷归顺项羽。项羽达到楚汉战争时期的顶峰。
成皋之成刘邦自彭城惨败以后,深感兵强将勇的楚军不是轻而易举就能战胜的。为了改变楚强汉弱的不利形势,他采纳张良等人的意见,退据地势险要又有充足储粮的荥阳、成皋(河南荥阳西北)一线,在政治上争取同项羽有矛盾的英布和彭越,重用韩信,在军事上制定了正面相持、敌后袭扰和南北两翼牵制楚军的作战方针。
荥阳和成皋同为关东重镇,是出关东进的必经之路。这里依山傍水,地势险要,黄河从北面流过,与济水汇合,水路交通便利。北面的敖仓是秦朝在关东的最大粮仓,西面是函谷关,关中的物资可以源源不断地运来。所以,荥阳和成皋是进可攻、退可守的战略要地。于是,楚汉之间旷日持久的争夺战,便在荥阳、成皋地区展开。
项羽这时已认识到刘邦是他的主要敌人,所以决定不给刘邦喘息的时间,又亲率大军追至荥阳。刘邦得到留守关中的萧何发来的援兵,韩信也率部前来会合,于是挑选了一些精锐骑兵阻击楚军,暂时挡住了项羽的攻势。项羽根据敌我形势的变化,也决定改变战略,与齐、赵约和,派人拉拢英布,准备与英布合力西进关中,捣毁刘邦的战略要地。
刘邦在荥阳站稳脚跟后,为了巩固后方,于汉二年(公元前205年)六月回到关中,彻底剿灭章邯的残余势力,并派兵加强临晋关、函谷关、武关等地的守备,转运关中地区的粮食和兵员不断支援前线。八月,刘邦返回荥阳、成皋,指挥作战。这时,刘邦派往九江的随何已劝说英布背楚附汉,但在彭城战后背汉附楚的魏王豹,却拒绝再回到刘邦阵营。刘邦于是派韩信北征魏王豹,以解除其对荥阳、成皋前线和关中的威胁。