秦末农民起义是中国历史上第一次全国规模的农民大起义。秦始皇统治时期,大规模地兴建宫殿和陵墓,以及筑长城、修驰道,对匈奴和南越的用兵,耗费了大量的人力和财力,极大地加重了人民的徭役和赋税负担。同时,还制订严刑酷法,使人民动辄触犯刑律。秦末农民战争始于陈胜、吴广领导的大泽乡起义,其后各地响应,其中属项羽和刘邦领导的两支军力最强。推翻了秦朝,打击了地主阶级。
秦二世元年(秦以十月为岁首,二世元年为前210年十月至209年九月)七月,陈胜、吴广等900余人被征发去渔阳(今北京密云县西南)戍边,途中在蕲县大泽乡(今安徽省宿州东南)遇大雨误期,根据秦朝法律,戍卒误期到达目的地的一律处死。情急之下,陈胜吴广领导戍卒杀掉押送的秦朝军官,发动反秦起义,
并喊出了“王侯将相宁有种乎”的豪言壮语,史称“大泽乡起义”。起义后,义军首先攻下了蕲县,然后兵分两路分别向东西两面进军:陈胜吴广命令符离(今安徽宿州东北)人葛婴率兵攻打蕲县以东;陈胜吴广则率主力西进,先后攻占了铚(今安徽宿州西南)、酂(今河南永城西)、苦(今河南鹿邑县)、柘(今河南柘城北)、谯(今安徽亳州)。一路上苦秦已久的百姓纷纷加入义军,等到陈县(今河南淮阳)附近时,义军已经有兵车六七百乘,骑兵千余,步卒数万人。
陈县是秦朝陈郡的郡治,是当时重要的城市。义军攻占陈县后,陈胜吴广召集当地的三老和豪杰们商议大事。三老、豪杰都劝陈胜称王,于是陈胜就被拥立为王,号“张楚”(张大楚国之意,有人认为是国号,有人认为是年号,有人认为是口号)。陈胜起义和称王的消息传出后,各地受尽秦朝官吏之苦的人们,纷纷杀掉当地的秦朝官员以响应。于是,陈胜决定部署军队,以主力西征,偏师略地,向西、北、南方向三面出击,以打击秦朝,扩大势力:陈胜任命吴广为假王(假为代理之意),监督诸将向西北攻击秦朝重地荥阳(今郑州西北),以打开进攻关中和咸阳的大道;又命铚(今安徽宿州西南)人宋留向西南进攻秦朝的南阳郡(其治所在宛城,今河南南阳市),以通过武关进攻关中。命令陈人武臣和邵骚、张耳、陈余北攻赵地,稍后又命令周巿北攻魏地。命令汝阴(今安徽阜阳)人邓宗向南攻打九江郡。
之前攻打蕲县以东的葛婴,在攻占东城(今安徽定远县东南)后,私自立楚人襄强为楚王。后来葛婴听说陈胜已经在陈县自立为王,就杀了襄强回来报告。葛婴到了陈县后,陈胜杀了他。
荥阳为中原重镇,吴广的西征军攻打到荥阳城下,秦朝防守荥阳的三川郡郡守李由(李斯之子)凭坚城固守,吴广不能克城,只能将荥阳团团围住,双方呈僵持状态。
于是陈胜又任命陈县的贤人周文(又称周章)为将军,向西攻打秦地。周文绕过荥阳一路扩充军队,到函谷关(今河南灵宝东北)时,已经有战车千乘,士卒数十万。秦二世元年九月,周文挺进到戏(今陕西临潼东),将军队驻扎下来。秦二世得报,不及调兵,于是赦免骊山刑徒和人奴产子,交给少府章邯指挥,抵御周文。周文兵败,退出函谷关,停下来驻在曹阳(亭名,在今河南灵宝东北)两三个月。章邯率秦军追杀到曹阳,周文再败,又退至渑池(今河南渑池南)呆了十几天。章邯军再次追上周文,大败楚军,周文自杀。
周文军败后,围困荥阳的楚军将领田臧等人互相谋划道:“周文战败后,秦军必然很快到来,我军包围荥阳还没有攻下,秦军来后内外夹击我们,我军必败。不如派少许兵力监视围困荥阳秦军,以精兵迎击东进的秦军。现在假王吴广骄纵,不懂用兵计谋,无法和他商量计议,不杀了他,恐怕要坏事。”因此几个将领共同诈称陈胜的命令,杀了吴广,将其首级献给了陈胜。陈胜承认了既成事实,派使者赐给田臧令尹(楚国称宰相为令尹)的大印,让他做统军的上将。田臧于是命令李归等将领继续在荥阳城下监视围困城内秦军,自己率精兵西去到敖仓(今河南郑州西北)迎击章邯所部秦军。双方交战后,田臧战死,所部溃散。章邯进兵到荥阳,击败了李归所率楚军并杀死了李归等。
阳城人邓说率军驻守于郏(今河南郏县,《史记》原作“郯”,在今山东郯城,应误),被受章邯指挥的另一秦将击败,邓说的部队溃散逃回陈县。铚(今安徽宿州西南)人伍徐率军驻守于许(今河南许昌市东),被章邯军击败,伍徐的部队都溃散逃回陈县。陈胜诛杀了邓说。
章邯打败了许县的伍徐后,就进攻陈县,楚国的上柱国(楚国最高等武官名)房君(封号)蔡赐战死。接着,章邯又进攻陈县西边的楚军张贺部,陈胜亲自出城督战,结果楚军依然战败,张贺战死。
秦二世二年十二月,陈胜退到汝阴(今安徽阜阳),随即又退到下城父(今安徽涡阳县东南),其驾车的御手庄贾叛变,杀了陈胜投降秦军。陈胜死后被葬在砀(今安徽砀山县南),谥号为隐王。