公元前208年,項梁、項羽率八千子弟兵渡江。渡江之後,東陽起義軍首領陳嬰率軍2萬人來歸附;渡淮河後英布等首領也率所屬起義軍前來歸附,項梁人馬一時達六七萬人,成為當時反秦起義軍主力。
項梁大軍一路順風,連戰連捷,進入山東薛城。這時,陳勝、吳廣等起義軍領袖犧牲的消息已被證實,項梁便召集各路起義軍首領會議,決定擁立舊楚國懷王孫心為王,仍用楚懷王名號,以統一號令天下各路起義軍。會議之後,項梁統帥大軍先後在東阿、定陶等地多次擊敗秦軍。接連不斷的勝利使項梁產生了嚴重的驕傲輕敵情緒,放鬆了對秦軍的警戒。秦將章邯利用項梁疏於戒備的缺點,在增援部隊的支持下,夜襲起義軍大營,起義軍損失慘重,項梁戰死。
項羽當時正在進攻陳留,聞聽項梁死訊,8000子弟兵一時放聲痛哭,項羽強忍悲痛,與劉邦等起義軍首領立即退兵彭城,保衛楚懷王,伺機再起。
章邯擊敗項梁軍後,認為楚軍主力已被殲滅,項羽等人已不足為慮,便渡黃河北上,向趙國發起進攻,並彙合秦將王離、涉間等部隊將趙王歇、大將陳餘等人包圍在巨鹿,形勢危急,趙王歇派出使臣向楚懷王求救。
楚懷王任命宋義為上將軍、項羽為次將,出兵救趙,同時派劉邦率軍向西進攻秦國,並當眾約定:誰先入關中,誰為關中王。公元前207年,宋義率軍向趙國進發。行至河南安陽後,便按兵不動,停留長達46日。項羽對宋義說:“秦軍將趙王歇包圍在巨鹿,我們應迅速渡過漳河救趙,與趙軍內外夾攻,必大破秦軍。”宋義笑道:“披甲持刀,衝鋒陷陣,我不及你。然而運籌帷幄、設計劃謀,你不如我。此時秦軍正傾全力攻趙,無論勝負,都將疲憊不堪,我們便可趁其疲憊,大破秦軍。依我之計,不如先讓秦趙兩軍拚死決戰,待兩敗俱傷,我們坐收漁人之利。”說罷,宋義下令:全軍上下將士,勢如猛虎者、貪狠如狼者、倔強不服從軍令者,一律斬首!這一命令顯然是針對項羽的。
宋義為拉攏齊國,把自己的兒子派往齊國擔任相國,親自率兵護送到無鹽,並在當地大擺筵席,遍請賓客。當時天氣寒冷,滂沱大雨,連綿不斷。士兵們都浸泡在雨水中,又餓又冷,怨聲四起。
項羽對將士們說:“我們本應合力攻秦救趙,但上將軍卻按兵不動。現軍中糧草已盡,大家都隻能以豆菜充饑,可宋義卻大會賓客、飲酒作樂,而不肯渡河打敗秦軍,從趙國取得糧草,不肯和趙國合力攻秦,卻想坐收漁利。一旦趙國被攻破,秦軍將更強,還有什麼疲憊之機可乘?現在楚懷王將國內軍隊全數交給上將軍一人獨掌,不僅是為了救趙,也是為了滅秦,國家安危在此一舉。但宋義卻不顧及國家,不體恤士卒,而竟徇私情,派自己的兒子去齊國擔任相國,這決不是能夠安邦安國的臣子。”