公元前74年,漢宣帝劉詢登基。他強調“霸道”、“王道”雜治,重視吏治,使漢朝又強盛了一個時期,當時,匈奴分爲南北兩部。由於貴族爭奪權力,連連發生內戰。甘露二年(公元前52年),南匈奴呼韓邪單于被他的哥哥郅支單于打敗,死傷了不少人馬。爲了部落的生存,呼韓邪決心投降漢朝,和漢朝重新修好。次年,呼韓邪親自到漢朝首都長安朝見漢宣帝。
對於第一個來到漢朝朝見的匈奴單于,漢宣帝給予了極高的禮遇,以貴賓相待。漢宣帝親自率文武百官到長安郊外去迎接呼韓邪單于,並在臨朝大殿爲他舉行了盛大的招待會。
呼韓邪單于對漢宣帝的盛情與真摯十分感動,在長安住了一個多月。爲了重振部落,他請求漢宣帝幫助他返回漠南。爲了削弱與漢朝敵對的匈奴勢力,漢宣帝派了兩個將軍帶領一萬名騎兵將呼韓邪護送到漠南。爲了幫助匈奴度過糧荒,還送去了三萬四千斛(古時候十鬥爲一斛)糧食,使呼韓邪部落又強大了起來。西域各國看到此情此景,也都紛紛效仿,爭相和漢朝和好。
公元前49年,漢宣帝去世,他的兒子奭即位,稱漢元帝。匈奴的郅支單于乘勢藉機侵犯西域各國,甚至殺了漢朝派去的使者。爲了打擊郅支單于的囂張氣焰,漢元帝派兵討伐,在康居打敗郅支單于,將他擒拿後處死。
郅支單于一死,呼韓邪單于的地位就穩定了。爲了表示匈奴與漢朝永遠和好的誠意,公元前33年,呼韓邪單于第二次來到長安,提出了同漢朝和親的請求。漢元帝欣然應允。
按照慣例,漢朝和夷族和親,都得挑個公主或者皇室的女兒。這回漢元帝決定挑個宮女給呼韓邪單于。聖旨傳到後宮:“誰願意到匈奴去皇上就認她當作公主。”
上千的宮女幽囚在宮中,除了半男半女的太監,就僅有一個男人——皇帝。而皇帝“臨幸”宮內嬪妃、宮女,機會實在太少了。所以宮女無異於尼姑。因此她們都渴望有一天能離開皇宮,過人的正常生活。但是,當她們聽說是去匈奴時,卻沒一個人樂意去。
家住南郡秭歸(今湖北)的宮女王嬙,字昭君,長得姿色秀美,且深明大義,從自身命運着想,也爲了漢朝與匈奴的和好,就毅然自請去匈奴和親。
漢元帝吩咐辦事的大臣擇日,爲呼韓邪單于和王昭君在長安舉行了成親盛典。呼韓邪單于一見到王昭君,便爲她的美貌所傾倒,兩人互訴衷情,如漆似膠。
這天,呼韓邪單于攜王昭君向漢元帝謝恩,漢元帝看到王昭君美麗而又大方,驚訝自己的後宮竟有這般仙女而竟然不得知曉,後悔當初怎不先面視一下。有心將王昭君留下,可又不好言而無信。
相傳漢元帝回到宮內,越想越懊惱。命人從宮女的畫像中將昭君的像拿來再看,雖然模樣相似,但和昭君本人實際相差很大。原來,毛延壽是個貪賄小人,哪個宮女給他賄金,他就給她畫美一點。否則,一筆帶過應付了事。漢元帝一氣之下,下令將畫師毛延壽斬首。
王昭君在漢朝和匈奴官員的護送下,離開了長安。遠離了京城、遠離了繁華,遠離了親人,一路朔風刺骨,風沙彌漫,昭君不時回首眺望南方,不知何日再能與親人團聚,不免落淚。但她仍覺得自己比其他宮女幸運,又覺肩負使命,所以勇往直前。
王昭君到了匈奴,做了呼韓邪單于的“寧胡閼氏”(君主的正妻)。開始語言、生活、飲食各方面都不習慣。昭君處處尊重匈奴的習俗,一方面精心服侍單于,使得夫妻恩愛,一方面,她體貼愛護臣民,以身示範,使得同去的漢人與匈奴人相處得親如一家。昭君以自己的品德、知識與智慧,博得匈奴人對他的喜愛和尊敬。
王昭君去沒多久,漢元帝死,他的兒子劉驁即位,爲成帝。昭君肩負着睦鄰友好的使命,經常勸呼韓邪單于不要發動戰爭,還把中原的文化傳給匈奴。呼韓邪單于死後,其前閼氏之子代立,漢成帝又命昭君從胡俗,復爲後單于的閼氏。打這以後,匈奴和漢朝和睦相處,有六十餘年沒有發生戰爭。
昭君出塞對漢朝和匈奴的和好關係,曾起到了重大作用。她的故事成爲後來詩詞、戲曲、小說、說唱等流行的題材,至今仍爲人們所傳頌。