这时,王恢、李息率领的三万大军已出代郡,准备袭击匈奴的辎重,在得知匈奴退兵后,非常惊奇。王恢自思自己的军队敌不过匈奴大军,只好退兵。韩安国等率领大军分驻马邑境内埋伏,但好几天不见动静,所以就改变了原先的作战方案,率军出击,结果一无所获。
马邑设伏诱敌失败,汉武帝把怒气发泄在王恢身上,说:“即使不能生擒匈奴单于,王恢也应该击其辎重,这样还能安天下之心,鼓士卒志气,如何能一无所为?不杀王恢,无以谢天下!”
王恢听说汉武帝大怒,自杀身亡。从此之后,匈奴便拒绝与西汉朝和亲,在边境拦路劫掠,或者出兵四处袭击汉朝边郡,以报复马邑的设伏,数量多的数不过来。汉武帝怒不可遏,决心进行大举反击。
元光六年(前129 年),匈奴兴兵南下直指上谷。汉武帝任命卫青为车骑将军,率领一万骑兵,出上谷,迎击匈奴;太中大夫公孙敖为骑将军,出代郡;太仆公孙贺为轻车将军,出云中;卫尉李广为骁骑将军,出雁门,各率骑兵一万,攻击在边境关市贸易的匈奴人。
匈奴见汉军轻敌,兵力分散,就采取放开两边,集中力量围歼中间两路的战略。公孙敖与匈奴主力接战,被击败,损失了7000 骑兵;李广在雁门北被匈奴重兵包围,负伤被擒,在被押送的途中夺马逃归,险些全军覆没。西出云中的公孙贺,一路上连个匈奴兵的影子都没见到。
听说中间两路兵败,害怕匈奴回兵包围,急忙退回境内。
只有东路的卫青,因匈奴的主力都集中在代郡、雁门一线,得以乘虚而入,直捣匈奴祭天和大会诸部的首府龙城,杀俘700 人凯旋。
从整个战局来看,是匈奴夺得了胜利。李广、公孙贺的损失严重,按罪当斩,汉武帝允许他们纳金赎为庶人。只有卫青一路获胜,显露出了杰出的军事才能,汉武帝封他为关内侯。龙城之战是自汉初以来对战匈奴的首次胜利,为汉朝以后进一步反击打下了良好的人心基础。
元朔元年(前128 年),匈奴铁骑万人掠辽西,杀辽西太守;侵扰到渔阳,韩安国几乎全军覆没;到雁门,杀掠千余人。汉武帝派卫青率骑三万出雁门,长驱而进,斩首虏数千人;复召李广为右北平太守。李广逃回时,曾夺弓射杀追骑,百发百中,匈奴敬畏,称他“飞将军”,因此几年不敢南侵右北平。
元朔二年(前127 年),汉武帝决心夺取河南。而这时的匈奴大举入侵上谷、渔阳,先攻破辽西,杀死了辽西太守,又打败渔阳守将韩安国,劫掠百姓两千多人。
汉武帝改变过去那种匈奴在哪里入侵,就到哪里援救、迎击的办法,采用声东击西的战术,命令卫青、李息率数万骑兵先向东北方向发进,拉出援救上谷、渔阳的架势,然后北上出云中郡,再突然西向,夺取河南。卫青受命后,便依计行事。
匈奴人见汉军已经向东进军,以为一定是来解上谷、渔阳的围困,赶忙调集军队,准备迎击汉军。可卫青出云中后,来不及顾及上谷、渔阳,沿黄河西进,潜行千余里,突然袭取了要塞高阙,切断了西部河南地区匈奴的退路。紧接着卫青挥军沿黄河折而南下,直达陇西,出现在匈奴的侧后方。
屯居河南地区的匈奴楼烦王、白羊王万万没有想到汉军会从北面、西面杀过来,措手不及,连忙率部渡黄河逃命。卫青和李息指挥部队乘势掩杀,歼敌数千人,获牛羊百余万头,收复了被匈奴占领了八十余年的河南地区。
河南地区的收复,终于扭转了汉朝对匈奴作战的不利形势,不仅解除了匈奴对长安的威胁,而且相当于在匈奴的肋部插了一把尖刀,因为从河南可以直接向匈奴腹地进攻,为一举歼击匈奴创造了有利条件。从这以后,汉、匈战争进入了汉对匈奴大举进攻的阶段。
当时担任郎中的主父偃向汉武帝建议,在这一大片丰饶的地区设置郡县。这样,军事上可以抵御匈奴,经济上可以转输漕粮。汉武帝把这个建议交给公卿们讨论,公卿们都说不行,怕匈奴骑兵再来捣乱。
