陈胜起义称王后,被秦朝贬为平民的原魏国宁陵君魏咎,前来追随。陈胜派原魏国人周市带兵夺取魏国旧地。成功后,众人拥戴周市做魏王,周巿不肯;齐、赵两国派使者拥立周巿为魏王,周巿还是坚持拒绝,声称必立魏咎为王。周巿派人去陈县迎魏咎,开始陈胜不放,但周巿一连五次请求,陈胜终于答应。秦二世二年十一月,周巿从陈胜处迎回魏咎为王,魏国复国,周巿任相国。
秦二世二年端月(即正月,秦避始皇讳改正月为端月),章邯击败陈胜后,北上进攻魏国并围困魏王魏咎于临济(今河南封丘县东)。
秦二世二年四月,临济危在旦夕,魏咎派相国周市出使齐、楚两国求援。齐、楚两国分别派田巴、项它两将率军随周巿援魏。但章邯击败了周巿带来的援军,周巿亦战死。
秦二世二年六月,魏咎为了城中百姓安全向秦军约定投降。谈判成功后,魏咎自焚自杀。
秦二世二年七月,魏咎之弟魏豹逃往楚国(秦二世二年六月项梁立熊心为楚怀王,恢复楚国)。楚怀王给予魏豹数千人,令其再夺取魏地。魏豹带兵重新攻略魏地,打下了20多座城池。
秦二世二年九月,魏豹自立为魏王。
秦二世三年十二月(二世三年为前208年十月至207年九月),魏豹率军救赵。随后,魏豹领兵跟随项羽入关。
秦亡后,汉元年(汉初承秦制,以十月为岁首)十二月,项羽想拥有魏地,于是改封魏豹为西魏王,让其迁到河东(秦河东郡),都平阳(今山西临汾市西南)。
陈胜在陈县称王后,派魏国人周市北略魏地。周巿平定魏地后,继续东进到战国时齐国旧地狄县。秦朝狄县县令率军民固守县城。秦二世二年十月,原齐国王族田氏同族的田儋和堂弟田荣,趁机率领家奴,杀死县令。田儋以自己是齐王同族,因此自立为齐王,率兵击退了周巿。之后田儋趁势率领起义军东进夺取了齐国旧地,齐国复国。
章邯进攻陈县后,陈胜败逃中被杀,但各地义军尚不知其生死。秦二世二年端月,曾名义上归属陈胜的义军头领秦嘉立原楚国贵族景驹为楚王,并领兵到方与(今山东鱼台北),欲攻打定陶(今山东定陶西北)的秦军。秦二世二年二月,秦嘉派公孙庆出使齐国,想联合齐王一起进攻秦军。
齐王田儋说:“听说楚王陈胜战败,但不知生死,你们楚国怎么不请示我就立新王?”公孙庆反驳说:“你们齐国也没有请示楚国就立王了,楚国为什么要请示齐国才能立王?况且反秦是楚国首先起事,应该号令天下!”齐王怒,于是杀了公孙庆。
章邯击败陈胜后,北上进攻魏国并围困魏王魏咎于临济(今河南封丘县东)。秦二世二年四月,魏咎派相国周市向齐、楚两国求援。六月,齐王田儋率军救援魏王咎至临济。章邯命令士兵口中衔枚夜袭齐国、魏国的军队,齐、魏军大败,齐王田儋败死,田荣收集残部败走东阿(今山东阳谷县东北)。
秦二世二年七月,齐国人听说齐王田儋已死,就另立了原战国末代齐王田建之弟田假为新的齐王,并以田角为相国,以田间为大将,以抵御诸侯。
秦二世二年八月,章邯继续追击田荣到东阿,将城池围困起来。楚国项梁听说田荣危急,于是率兵来救,于东阿城下大破章邯军。章邯率部向西败退,项梁紧追不舍。
田荣解围后,听说齐人另立了新君,勃然大怒,于是回师攻击驱逐新齐王田假。田假不敌,逃到楚国,齐相田角逃到赵国。大将田间之前到赵国求救兵,如今也滞留在赵国不敢回来。田荣于是立已死的齐王田儋之子田巿为齐王,自己做相国,并任命自己的弟弟田横为大将,重新平定了齐地。
项梁追击章邯时,秦朝派兵支援章邯,章邯军势又盛。项梁于是遣使至赵、齐两国请求出兵共同对付章邯。田荣却表示,除非楚国杀了跑过去的田假,赵国杀了容留的田角和田间,齐国才会出兵。楚怀王不肯杀田假,赵国也不愿杀田角和田间,因此齐国发怒拒绝发兵相助项梁。秦二世二年九月,章邯趁项梁小胜后轻敌麻痹发动突袭,项梁大败身死,楚军向东败走。
章邯认为楚地已不足担忧,于是北上进攻赵国,围赵王歇于巨鹿。赵王向楚国和各路反秦诸侯求救,田荣仍不发兵。但田荣的孤立政策在齐国内部也引发了很多不满。秦二世三年十月,齐将田都反叛田荣,自行率兵前往援助赵国;二世三年十二月,原战国末代齐王田建之孙田安,也攻下济北郡几座城池,率军投奔援赵的项羽楚军。
项羽率军解巨鹿之围后,又迫降了章邯,然后率诸侯联军西行入关中。汉元年十二月(汉初承秦制以十月为岁首),项羽大封诸侯。因为田荣没有出兵援助在东阿救过自己一次的项梁,又没有出兵援助赵国和西攻秦地,项羽对其很不满,没有封其为诸侯王,还把田荣立的齐王田巿改封为胶东王,以即墨(今山东平度县东南)为都城。
而齐将田都因主动救赵,被项羽封为齐王,以临淄(今山东淄博市东北)为都城。田安也因随从项羽救赵有功,被项羽封为济北王,以博阳(今山东泰安市东南)为都城。
陈胜在陈县称王建政后,大梁人陈余劝说陈胜北略黄河以北之地,并自告奋勇愿领兵前往平定赵地。于是陈胜派以前交好的陈县人武臣为将军,以邵骚为护军,以张耳、陈余为左右校尉,给予3000兵士,北攻赵地。
秦二世元年八月,武臣自白马(今河南滑县东北)渡过黄河,一路扩充军队,得兵数万人,武臣被立号为“武信君”。武臣率军攻占赵地十余城,并杀了所下之城的秦朝官吏。于是赵地剩下的城池都据城坚守不降。武臣转向东北方攻打范阳(今山东梁山县西北)。
范阳人蒯通(本名蒯彻,汉避武帝讳改彻为通)游说秦范阳县令向武臣投降。之后蒯通又作为范阳令的使者劝说武臣,让他接受范阳令的投降封其为侯,然后让范阳令到燕赵之地驰游,给那些不降的城池看看。蒯通说如此以来燕赵之地的城池自然都会不战而降,可以传檄而定千里之地。武臣听从了蒯通的计策,让蒯通赐给范阳令侯印。赵地的各地听说后,有30多城不战而降武臣。
武臣等人到邯郸后,张耳、陈余听说周文西进到戏(今陕西临潼东)即败退,又听说诸将为陈胜出征略地,却有很多因谗言诽谤而获罪被杀,还又怨恨陈胜采纳他们的计策、不任命他们做将军而仅仅只授予校尉之职,于是劝说武臣自立为王。武臣于是自立为赵王,并封陈余为大将军,封张耳为右丞相,而封邵骚为左丞相。
陈胜得到了武臣自立为赵王的消息,大怒,原想杀尽武臣等人的家眷,但是上柱国房君(封号)蔡赐劝陈胜说,现在强秦尚在,如果杀了武臣等人的家眷等于又给自己制造出一个劲敌,不如乘机祝贺武臣等,而让他们赶快带兵西攻秦地。陈胜认为说的对,听从了蔡赐的建议,把武臣等人的家眷软禁在宫中,而封张耳之子张敖为成都君。接着陈胜派使者前往祝贺武臣称王,并命令催促他们发兵向西攻入函谷关。
但张耳、陈余又劝赵王武臣说:“大王您自立为赵王陈胜是不愿看到的,只不过是为了让您替楚国去西攻强秦,才来祝贺。一旦楚国灭了秦,陈胜必然来攻打赵国。希望大王不要向西进兵,而是北略燕地、代地,南收河内地区(今河南黄河以北地区,即秦河内郡一带),以壮大自己的势力。”赵王认为有理,于是没有向西进兵,而是派韩广攻燕地,李良攻常山郡(秦时本称恒山郡,汉避文帝讳改为常山),张黡攻上党郡。
韩广攻下燕地后,在当地民众的支持下,也有样学样,自立为燕王。赵王武臣大怒,率张耳、陈余进攻燕国。但是武臣一次微服出行时被燕军捕获,张耳、陈余数次遣使交涉使者都被杀。幸而赵军中有一小卒,自告奋勇出使燕营,声称燕将如杀了武臣则遂了张耳陈余心愿,武臣才被放回。
李良平定了常山郡后,赵王武臣又命他攻打太原郡。李良率兵至石邑(今河北石家庄市西南),秦兵扼守井陉关(今河北井陉县东南),李良不得前进。秦将诈称秦二世派人给李良一封信,在不封口的情况下递给李良,劝李良投降为秦效力。李良不信,但又无法破关,就返回邯郸请求增兵。
秦二世二年(秦以十月为岁首,二世二年为前209年十月至208年九月)十一月,李良回邯郸时于途中遇到武臣的姐姐外出,她的随从有骑兵百余人。李良误以为赵王外出,拜伏于路边。武臣的姐姐酒醉,不知李良是大将,仅派骑士来答谢。
李良平时自以为是显贵,这次觉得在自己的随从面前丢了脸。此时其随从中有一人又在其中挑拨,而李良先前得到劝降的秦书后本就有些动摇,于是李良大怒,杀了武臣之姐,率军袭击邯郸。邯郸方面毫无防备,于是一时间赵王武臣和左丞相邵骚均被杀,张耳陈余因耳目较多而逃出。
张耳、陈余收集军队,得数万人。其门客中有人劝张耳说,张、陈二人都是外国人,只有立原赵国王室之后才能于赵国立足。于是秦二世二年端月(即正月,秦避始皇讳改正月为端月),张耳、陈余立原赵王后裔赵歇为王。李良率兵攻打陈余,被陈余击败,李良败走后投降了章邯。
章邯在破项梁军后,渡河北上攻打赵国。秦二世二年后九月(闰月),赵王赵歇与张耳退守巨鹿(今河北平乡西南),秦将王离率边防军约20万围巨鹿。章邯攻占邯郸后,将邯郸城夷平,迁徙其民于河内。之后章邯驻兵棘原(邑名,在漳水以南),在巨鹿以南筑甬道,以运粮供给王离军。无奈之下赵王派使者向楚怀王以及各国诸侯求援。
赵将陈余北收常山郡之兵数万,驻军于巨鹿之北。张耳一再催促城外的陈余解围,但是陈余不敢也无力解围。数月过后,张耳大怒,派使者张黡、陈泽责问陈余,并以两人数十年的交情逼迫。陈余无奈,派5000士兵交给张黡、陈泽,命他们尝试攻击秦军围城部队,结果全军覆没。当时,各国将领来救赵国的有十余路人马,赵相张耳之子张敖也北收代郡之兵万余屯于巨鹿城北,可是他们害怕秦军强大,都扎下营寨,不敢跟秦军交锋。
秦二世二年后九月(闰月),楚怀王宋义为上将军,项羽为次将,范增为末将,率军数万北上以解巨鹿之困。楚军进至安阳(现在山东曹县东南)后,宋义逗留46天不前进。秦二世三年(公元前208年)十一月,项羽矫诏杀宋义。楚怀王遂封项羽为上将军,并令英布和蒲将军两支楚军也归其指挥。
项羽先派遣部将英布、蒲将军率领两万人为先锋,渡过黄河(一说为漳水),小胜秦军。然后,项羽亲率主力渡河,并下令全军破釜沉舟,每人只带三天干粮,以示决一死战之决心。楚军过河后击败章邯军,章邯后退。齐、燕、魏等各路救赵军队皆作壁上观,待楚军大破秦军时,纷纷也冲出营垒助战,与楚军一起围攻王离军,最后俘获了秦军统帅王离,杀死秦将苏角,迫使秦将涉间自杀。巨鹿之困因而得解。
巨鹿解围后,赵王赵歇与张耳出城答谢诸侯。张耳见到陈余,责怪他不救巨鹿,并问张黡、陈泽的下落。陈余称自己给二人5000军士,他们进攻围城秦军时身死。张耳不信,以为是陈余杀了张、陈二人,仍一再追问。于是陈余怒解将军印交还张耳,张耳开始愣住未接,后在亲随的劝说下,也就顺势拿回了陈余的将军印,而且接收了陈余的部队。陈余于是率亲信数百人跑到黄河岸边的湖泽中捕鱼打猎去了。两个多年至交从此反目。
项羽随后率诸侯联军逼降章邯,又率军入关中,张耳率军跟从,赵王歇留在赵国镇守。
秦亡后,项羽改封赵王赵歇为代王,张耳以跟从入关之功被封为常山王,又将陈余所在的南皮(今河北南皮县北)附近三个县封给了陈余。
秦二世元年(前209年)九月,项梁和项羽杀死会稽郡太守于吴(今江苏省苏州),号召楚国遗民起兵反秦,得精兵8000余人。
项梁、项羽率精兵8000渡江北上,势如破竹,连败秦军,起义军一路上吸收多支起义军,起义军人数迅速扩大到六、七万人。秦二世派章邯率军前来来镇压,在定陶(今山东省定陶县),项梁战死。
章邯败项梁后,率军渡河北击赵,赵地钜鹿被秦军所困,项羽率军北上救赵并与秦军展开激战。最后项羽大败秦军,全歼秦军主力。
刘邦时任泗水亭长,当时给县里押送刑徒前往骊山营造陵墓,半路上,很多刑徒逃亡了,刘邦索性把剩下的那些也给放了,并与之一起逃到芒、砀一带的山区里。陈胜吴广起兵后,刘邦亦起兵并攻下沛县,杀死县令,刘邦被推举为沛公。刘邦所领导的起义军迅速发展到几千人,并听从于项梁的指挥。
项梁战死后,刘邦趁项羽带兵渡河救赵之机,带兵西进关中并攻破武关,直捣到达灞上(今陕西西安东)。这时,秦王子婴白马素车,向刘邦的起义军投降,秦朝灭亡。
韩国贵族张良,在秦国灭韩后立志报仇复国。秦始皇二十九年(前218年),始皇东游,至博浪沙(今河南郑州市东北)中,张良令力士操铁椎狙击始皇,但可惜误中副车。始皇大怒,传令天下大规模搜索刺客,张良被迫逃亡,藏匿于下邳(今江苏睢宁县西北)。在此期间,张良曾于下邳圯桥遇黄石公,得《太公兵法》,谋略大长。后来项羽的叔父项伯犯了杀人命案,躲藏到下邳,曾得到过张良的帮助和掩护。
陈胜吴广起义后,张良也于下邳聚集了少年百余人起事响应。章邯于陈县击败陈胜后,陈胜出逃不知生死,陈胜部下义军将领秦嘉于是立楚国贵族景驹为代理楚王,以留县(今江苏沛县东南)为都城。
张良率领部属想去留县投奔景驹,正巧在路上碰到了刘邦,并且谈得投机,于是就没有去见景驹,而是跟从了刘邦,做了他的部将。后来张良跟着刘邦到了薛县,项梁等人共立了熊心为楚怀王。张良一向有复国之志,就劝项梁说:“您已经立了楚国的后代,而原来韩国的诸公子中以横阳君韩成为贤能,可以立其为韩王,以更多地树立党羽。”
项梁听从了张良的意见,派他去找到韩成,立其为韩王,并任命张良为韩国司徒,韩国复国。项梁又给了他们君臣千余兵马,让他们西去恢复韩国旧地。开始韩王成和司徒张良率军攻下了原韩地的数座城池,但旋即又被秦军夺回。韩王成和张良只得在颍川郡一带打游击。
秦二世二年后九月,楚怀王命令刘邦西征。秦二世三年三四月间,刘邦从洛阳往南走出镮辕邑(今河南偃师东南)时,张良又碰上刘邦并带兵跟从他,攻下了韩地十余座城池,并击破了秦将杨熊所部。刘邦就命令韩王成留守在阳翟(今河南禹县,秦颍川郡的郡治),将张良带在身边继续西进。
秦二世三年七月,赵将申阳(赵相张耳的部下)率军西进,攻占了原韩国的河南洛阳一带,并迎接接西进的项羽楚军于河上。
秦亡后,项羽把原战国时的韩国地区一分为二,继续封韩成为韩王,建都于阳翟,但不让韩成留在韩国执政,而是带着他东归到了彭城,后来杀了他;又把原韩国的大部分地区分封给了原赵将申阳,建立了河南国,建都洛阳。
秦二世元年(前210年十月至前209年九月)九月,秦末起义后首任赵王武臣,听从张耳、陈余“不要西进攻秦,抓紧北略燕代、南收河内以自广”的建议,派部将韩广北略燕地。韩广占领燕国旧地后,在当地民众支持下恢复燕国。
赵王武臣大怒,乃与张耳、陈余率军北攻燕地。但赵王武臣一次微服出行,被燕军捕获。燕军欲以赵王换赵国一半领土。张耳陈余多次派使者前往交涉,都被燕国杀死以求地。
二人无计可施之间,赵国一小卒挺身而出,跑到燕营,游说燕将说,张耳陈余都志向远大,能力超群,早想称王,燕国抓住赵王不放,正合二人心意;燕国杀了赵王,张陈二人正好可以瓜分赵国,并以为赵王报仇为借口攻燕,以二人的能力互相支持,灭燕就容易了。燕将信以为然,于是释放了赵王武臣。
秦二世二年后九月,秦军章邯、王离大军进攻赵国(时赵王为赵歇),围赵王和张耳于巨鹿。
秦二世三年十月,燕国派大将臧荼援救赵国。巨鹿大战后,臧荼随项羽西入关中。
秦亡后,燕国被项羽一分为二,韩广被项羽改封为辽东王;臧荼因随项羽入关,被项羽封为燕王,都蓟(今北京市西南)。
项羽在秦将章邯投降后,率兵向咸阳进发,杀死了已经投降刘邦的秦王子婴,并火烧秦宫殿。前206年,项羽自行分封天下,封刘邦为汉王,辖汉中、巴、蜀之地,治南郑(今陕西汉中)。当年,田荣率军杀田市,逐田都,自立为齐王。然后援助陈余击败常山王张耳,重迎赵王,恢复赵国。项羽率军镇压。刘邦趁机“暗渡陈仓”,挺进三秦。开始了长达五年的楚汉战争。