反秦的道理,于是就发动吴中之兵起事。项梁派人去接收吴中郡下属各县,共得精兵八千人,又部署郡中豪杰,派他们分别做校尉、侯、司马。于是项梁做了会稽郡守,项羽为裨将,去巡行占领下属各县。后项梁率部众八千人渡江西进,期间曾派项羽进攻襄城,项羽打了襄城很久才攻克,于是坑杀全城,返回向项梁报告。
陈胜被杀,项梁召集部下议事,居巢人范增前来告诉项梁,如果不立楚国后人而自立,一定不会长久。于是,项梁听取范增的意见,在民间找到楚怀王之孙熊心,仍立为楚怀王,项梁自号武信君。项梁统军在东阿大破秦军,另遣项羽、刘邦攻打城阳并屠城,并向西击破秦军于濮阳东,秦军被迫退入濮阳城内,项羽、刘邦又率军攻打定陶,但没有攻克,转而向西略地至雍丘,大破秦军,斩杀秦将李由,接着攻打外黄,亦未能攻克。
当时,项梁连破秦军,非常骄傲,而此时秦派了大量的援军支援章邯,章邯在得到援军后突袭项梁,项梁兵败被杀。项羽和刘邦放弃外黄,攻打陈留,也没有攻下。考虑到项梁兵败之后,士卒害怕,士气低落,于是决议退军,项羽引军驻扎彭城西,刘邦驻军于砀。
章邯杀败项梁后,认为楚兵不足为虑,于是引军北渡黄河,大破赵国。赵王以陈余为将,张耳为相,败走巨鹿,章邯率领王离、涉间共四十万围攻巨鹿。楚怀王听闻项梁战死,非常害怕,从盱眙赶到彭城,收编项羽、吕臣的军队由自己统领,并任命吕臣为司徒,吕臣的父亲吕青为令尹,封刘邦为砀郡长、武安侯,仍旧统领砀郡的军队。
楚怀王以宋义为上将军,封项羽为鲁公,为次将,范增为末将,以宋义为主帅率兵五万前往救赵。宋义军行至安阳,逗留四十六日,不再进军,项羽向宋义建议说:“秦军围赵于巨鹿,我们快速引兵渡河,和赵兵内外夹攻,必然可以击破秦军。”但宋义不肯发兵,还在军中饮酒作乐。时天气寒冷,又下大雨,士卒又冷又饿,项羽见此状况,于早晨去见宋义,将其斩杀。项羽提着宋义的头告诉将士:“宋义想要和齐联合谋反,楚怀王暗令我将其杀死。”诸将因为畏惧而屈服,不敢抗拒,于是推项羽暂为上将军,桓楚将此事报告给楚怀王,楚怀王就任命项羽为上将军。
项羽杀了宋义之后,威震楚国,名闻诸侯,于是派遣当阳君英布、蒲将军率领两万士卒渡河,多次进攻章邯给王离军输送粮食的甬道,但收获不大,赵将陈余派人请项羽再次发兵。项羽率领全部兵马渡河,与秦军大战九次,章邯破走,项羽率军继续北上进攻