秦二世二年(前208)闰九月,沛公刘邦奉楚怀王之命,率兵西入函谷关(今河南录宝东南),伐灭秦朝。
早在同年七月,农民起义军进攻定陶(今山东定陶西北)失利,西进函谷关又受阻,楚怀王与诸将约定:“先入定关中者王之。”由于刘邦待人宽厚,有长者之风,定能得关内百姓拥护,所以楚怀王命他收编陈王胜和项梁的散卒,率部西进入关。
十月,刘邦率军攻下成武,十二月领兵抵达栗(今河南夏邑)。第二年春二月,北击昌邑(今山东金乡西北)不克,但收编了来归顺的彭越及千余部众。刘邦转而率军过高阳(今河南杞县西)时,里监门郦食其求见。刘邦素来不喜欢儒术,如有儒生求见,就会抢去他们的帽子撒尿,郦食其求见时,刘邦正坐在床上让两个女子洗脚,郦食其长揖拜后,斥责刘邦对长者无礼,刘邦于是中止洗脚,请郦食其上座,虚心求教。他听从郦食其的计谋,避开秦兵的锋芒,首先攻取了交通要道陈留(今河南开封县东南),获得大批军粮供给。郦食其因此被刘邦封为广野君,他的弟弟郦商率数千人加人刘邦,被封为将。
刘邦兵力更为壮大。三月攻克白马后,刘邦又于四月进占沛王颖川(今河南禹县)。张良率军在此地与刘邦合兵,刘邦留下韩王成守阳翟,自己与张良一同南进。七月,又得南阳(今河南南阳)郡守吕龄投降。一路上,刘邦势力日益壮大,在西进途中所向无敌,先后攻下丹水(今河南淅川西)、胡阳(今河南唐河 湖阳镇)及析县(今河南西峡)等。八月,刘邦率数万大军攻克武关(今陕西商南南),屠城后挥师北上,直逼咸阳。
在义军紧逼的情势下,秦中丞相赵高惟恐二世迁怒,称病不朝。秦二世派人捉拿赵高问罪,赵高便与他的女婿咸阳令阎乐、他的弟弟赵成合谋杀了二世,命二世的侄子子婴斋戒五日,准备即王位。子婴了解赵高已与义军有密约,发兵在斋宫诱杀赵高,夷灭赵氏三族,并派兵扼守峣关(今陕西蓝田东南),抗拒义军攻势。
这时,刘邦已经率领数万大军到达峣关南面。依照张良的计谋,义军在山上大量张插旗帜设疑兵之计,张扬声势,并派郦食其与陆贾劝秦将投降,同时,刘邦却带兵绕过峣关,翻越蒉山,突然袭击蓝田(今陕西蓝田西),大破南北两面的秦军,于是据守峣关的秦军全部瓦解。前206年,沛公刘邦进驻霸上(今陕西西安东),秦王子婴投降,秦王朝灭亡。
