匈奴于漠北大敗后,隨即西遷至西域以北。漢武帝之前就派遣張騫出使西域,打算聯合西域大月氏攻打匈奴,但被匈奴俘虜。后來歸國參與漢對匈奴之戰。漠北之戰后漢武帝再派遣張騫出使西域,并在西域設立都護府。聯合西域諸國壓縮匈奴發展空間。
中原王朝漢武帝此后向東攻略高麗建漢樂浪四郡,向南攻略百越設七郡。此后以名臣霍光(麒麟閣十一功臣之首,霍去病之弟)輔佐漢昭帝。公元前73年,匈奴脅迫西域國烏孫(西域邊境與中亞地區)。于是漢出兵十幾萬與烏孫聯合共二十幾萬大敗匈奴軍,直搗右谷蠡王庭。
公元前58年,匈奴內部五單于互相爭位攻伐,呼韓邪單于與郅支單于成為最后爭奪王位者,郅支單于大敗呼韓邪單于,占據漠北王庭。呼韓邪單于南下降漢。此后郅支單于率匈奴遷徙至中亞康居國(今哈薩克斯坦南部,里海以東。)呼韓邪單于再據匈奴漠北王庭。
公元前36年,漢名將陳湯、甘延壽 上疏漢元帝“臣聞天下之大義,當混為一。匈奴呼韓邪單于已稱北藩,唯郅支單于叛逆,未伏其辜,以為強漢不能臣也。郅支單于慘毒行于民,大惡逼于天。臣延壽、臣湯將義兵,行天誅,賴陛下神靈,陰陽并應,陷陣克敵,斬郅支首及名王以下。以示萬里,明犯強漢者,雖遠必誅!” 陳湯、甘延壽率軍出西域越過蔥嶺(帕米爾高原),經大宛、烏孫至中亞的康居,由于康居受匈奴脅迫本就打算攻打匈奴,于是陳湯率軍圍攻郅匈奴據點,攻殺郅支單于,凱旋而歸。于是西遷康居的郅支單于匈奴部被滅。
公元前33年,據有漠北的匈奴呼韓邪單于主動來到漢朝朝見漢元帝,向漢稱臣,并請求和親,結永久之好。于是便有了“昭君出塞”,王昭君被封為寧胡閼氏。漢與匈奴于是相處50年未有戰火。
公元48年,匈奴分裂為南北兩部,南匈奴南下降漢,被東漢光武帝封于河套平原地區。北匈奴繼續占據漠北,并對河西走廊和北部邊境進行侵擾。在南匈奴支持下,漢朝再次征伐北匈奴。
公元73年,漢明帝派竇固、耿恭率軍征伐匈奴并且擊敗呼衍王和左谷蠡王。
公元89年,漢和帝派竇憲、耿秉率軍大敗北匈奴單于。北匈奴再次西遷康居。
公元137年,漢順帝時漢將斐岑自西域攻擊北匈奴殘部呼衍王。
公元151年,漢桓帝時漢將司馬達自西域再擊攻擊北匈奴呼衍王。匈奴再往西遷徙。
公元160年,匈奴殘部遷徙至康居國錫爾河流域,此后再無史料記載。(中國古代史記載到此)
另一方面南匈奴降漢則一直經歷到了東漢末年,公元184年黃巾之亂時期。匈奴在康居戰敗后被迫再往西遷徙。 一百多年后歐洲古代史上的匈人出現在了里海北岸的平原,先攻滅里海與黑海之間的阿蘭國,然后延平原地帶西進攻滅黑海北岸的東哥特國,再攻克西哥特國導致歐洲民族大遷徙-日耳曼人遷徙。之后大破羅馬。(歐洲沒有游牧民族史,而匈人是游牧民族,而且匈奴兩次西遷康居然后被漢軍打敗,再往西遷徙就到了里海。里海與黑海北岸是平原地區。)