秦二世元年,便是公元前二〇九年,戍卒陈胜、吴广,因为遣戍渔阳,自度失期当死,起兵于蕲。北取陈。胜自立为楚王。于是六国之后,闻风俱起。
魏人张耳、陈余,立赵后歇为赵王。
周市立魏公子咎为魏王。
燕人韩广,自立为楚王。
齐王族田儋,自立为齐王。
时二世葬始皇于骊山,工程极其浩大。工作的有七十万人。二世听了赵高的话,把李斯杀掉。以为山东盗是无能为的。后来陈胜的先锋兵打到戏,才大惊,赦骊山徒,命少府章邯,带着出去征讨。这时候,秦朝政事虽乱,兵力还强。山东乌合之众,自然不能抵敌。于是陈胜、吴广先后败死。章邯北击魏,魏王咎自杀。齐王儋救魏,亦败死。
先是楚将项燕之子梁和其兄子籍,起兵于吴。沛人刘邦,亦起兵于沛。项梁渡江后,因居鄛人范增的游说,立楚怀王之后心于盱眙,仍称为楚怀王。项梁引兵而北,其初连胜两仗,后来亦为章邯所袭杀。于是章邯以为楚地兵不足忧,北围赵王于巨鹿。
楚怀王派宋义、项籍、范增北救赵,刘邦西入关。宋义至安阳,逗留四十六日不进。项籍矫怀王命杀之,引兵北渡河,大破秦兵于巨鹿下。章邯因赵高的猜疑,就投降了项籍。先是韩人张良,因其先五世相韩,尝散家财,募死士,狙击秦始皇于博浪沙中,想为韩报仇。及项梁起兵,张良游说他,劝他立韩国的公子成为韩王。刘邦因张良以略韩地,遂入武关。赵高弑二世,立公子婴,想和诸侯讲和,保守关中,仍回复其列国时代之旧。子婴又刺杀赵高。而刘邦的兵,已到灞上了。子婴只得投降,秦朝就此灭亡。时为公元前二〇六年。
项籍既降章邯,引兵入关。刘邦业已先入,遣兵将关把守了。项籍大怒,把他打破。这时候,项籍兵四十万,在鸿门,刘邦兵十万,在灞上。项籍要打刘邦。其族人项伯和张良要好,到刘邦军中,劝良同走。刘邦因此请项伯向项籍解释,自己又亲去谢罪。一场风波,才算消弭。
这时候,封建思想还未破除。亡秦之后,自然没有推一个人做皇帝之理,于是便要分封。当封的,自然是(一)前此六国之后;(二)亡秦有功之人。而分封之权,自然是出于众诸侯的会议,能操纵这会议的,自然是当时实力最强的人。
当楚怀王遣将时,曾说:先入关中者王之。照这句话,此时当王关中者为刘邦。然而项籍受章邯之降时,已将秦地分章邯等三人了。这大约是所以抚慰降将之心,减少其抵抗力的。其时刘邦的能先入关,原是意想不到的事。这时候不便反悔,于是说:(一)怀王不能主约;(二)巴、蜀、汉中,亦是关中之地,就把刘邦封为汉王。这也不能说不是一种解释。然而龙争虎斗之际,只要有辞可借,便要借口的,哪管得合理不合理?
项籍尊楚怀王为义帝,而自称霸王。照春秋战国的习惯,天子原是不管事的,管理诸侯之权,在于霸主。这时候,天下有变,自然责在项籍。于是因田荣的反叛,出兵征讨。汉王乘机便说:项籍分封不平。以韩信为大将,北定三秦又破韩、河南、西魏、殷四国,并塞、翟、韩、殷、魏之兵五十六万人东伐楚,居然攻入楚国的都城。项籍闻之,以精兵三万人,从胡陵还击,大破汉兵。汉王脱身逃走。然而汉王有萧何,守关中以给军食,坚守荥阳、成皋以距楚,而使韩信北定赵、代,转而东南破齐。而项籍的后方,为彭越所扰乱,兵少食尽。相持数年,楚兵势渐绌,乃与汉约,以鸿沟为界,中分天下。汉王背约追楚,围项籍于垓下。项籍突围而走,至乌江,自刎死。于是天下又统一了。时为公元前二〇二年。