漢高帝二年五月,楚漢兩軍在滎陽(今河南滎陽東北古滎鎮(zhèn))、成皋(今河南滎陽西北汜水鎮(zhèn))一線形成對峙(參見成皋之戰(zhàn))。是時,魏王豹踞河?xùn)|(郡治安邑,今山西夏縣西北禹王城)反漢。魏軍西進(jìn)可圖關(guān)中(指函谷關(guān)以西的地區(qū)),南下可切斷關(guān)中與滎陽的聯(lián)絡(luò)。
為解除側(cè)翼威脅,八月,劉邦遣韓信突襲安邑(今山西夏縣西北禹王城)(參見安邑之戰(zhàn)),大破魏軍。鑒于黃河以北代、趙、燕三國和占有今山東大部的齊國的向背直接關(guān)系到楚漢戰(zhàn)爭全局,劉邦采納韓信“北舉燕、趙,東擊齊,南絕楚之糧道,西與大王會于滎陽”(《漢書·韓信傳》),對楚實施戰(zhàn)略包圍的建議,在堅持對楚正面作戰(zhàn)的同時,給韓信增兵3萬,命其率軍東進(jìn),開辟北方戰(zhàn)場。
漢高帝二年閏九月,韓信率軍在閼與(今山西和順)俘代相夏說,滅代。即以俘獲之精兵,補(bǔ)充在滎陽對楚作戰(zhàn)的劉邦軍,支援正面戰(zhàn)場作戰(zhàn)。三年十月(漢初承秦制,十月為歲首),韓信攻趙至太行山八大隘口之一的井陘口(今河北井陘東南),設(shè)背水陣,誘敵出戰(zhàn);出奇兵襲占趙軍壁壘,拔幟易幟,大破趙軍,生擒趙王歇(參見井陘之戰(zhàn))。
滅趙后,韓信采納原趙國謀臣李左車建議,休整兵馬,安撫民眾,擺出欲強(qiáng)攻燕國之勢,再派使臣向燕王陳述利害,遂不戰(zhàn)而降燕。齊王田廣為阻止韓信軍東進(jìn),屯兵歷下(今山東濟(jì)南市西)。劉邦遣酈食其游說田廣。田廣欲降漢,撤去歷下守軍。
漢高帝四年十月,韓信乘齊無備,襲破歷下,進(jìn)占齊都臨淄(今山東淄博市東北臨淄故城)(參見歷下、臨淄之戰(zhàn))。田廣向楚齊救。項羽以龍且率兵號稱20萬救援齊國。十一月,韓信與齊、楚聯(lián)軍戰(zhàn)于水(今山東濰河)。韓信乘夜以沙袋在上游將河水堵截,天明誘敵進(jìn)攻。齊、楚聯(lián)軍渡水進(jìn)擊時,漢軍掘開沙袋放水,將聯(lián)軍沖成兩段。韓信乘其半渡發(fā)起攻擊,大敗齊楚軍,俘齊王田廣,盡占齊地,直接威脅楚都彭城(今江蘇徐州市,參見濰水之戰(zhàn))。