馬邑之圍是漢朝對匈奴政策的一個轉折點。在此之前,從漢高祖直到漢武帝,漢朝一直對匈奴採取懷柔政策。到了建元六年(公元前135年),漢朝的實力已經足夠與匈奴一戰,大行令(即大鴻臚,省部級)王恢極力主張停止與匈奴和親,興兵征討,以獲得北部邊境的長治久安。建元七年,王恢更是建議:匈奴現在對漢朝沒有戒心,可以誘之以利,圍而殲之。
王恢的計謀被漢武帝採納。於是雁門馬邑的地方豪強聶翁壹受命潛入匈奴,向單于表示願意為內應,殺死馬邑的地方長官,迎接匈奴大軍入城。單于欣然應允,果然親自帶領十餘萬大軍前往馬邑。漢朝悄悄地動員了二十幾萬大軍,分別由李廣、公孫賀、王恢、李息等人統領,埋伏在馬邑周圍。王恢的任務是代郡出發,襲擊匈奴的輜重,同時也是截斷匈奴的後路。
然而,單于統率十萬騎兵走到距馬邑城還有一百多里時,見牲畜遍野,卻沒有一個放牧的人,感到奇怪。就派人攻打亭隧,俘虜了雁門郡尉史,威脅要殺掉他,這個尉史就告訴單于漢軍的埋伏。單于大吃一驚,於是領兵撤退。邊塞守軍傳報單于已退,漢軍追到邊塞,估計追不上了,就全軍撤回。而王恢指揮的軍隊,按計劃準備襲擊匈奴的後勤給養,聽說單于返回,軍隊很多,也不敢出擊。
事後武帝對王恢很惱怒。王恢說:“根據原來的計劃,約定引匈奴進入馬邑城,主力軍隊與單于交戰,而我率軍襲擊他們的後勤給養。現在單于未到馬邑就全軍撤回,三萬人攻打匈奴大軍,只能是自取其辱。我本知道撤兵回來是要殺頭的,但這樣卻保全了陛下的三萬將士。”
於是武帝把王恢交附廷尉,廷尉判決:“王恢避敵觀望,不敢出擊,判處斬首。”王恢暗中向丞相田蚡行賄,求他開脫罪名,田蚡不敢向武帝說,就對太后說:“王恢第一個提出了在馬邑誘殲匈奴主力的計劃,現在行動失敗而殺了王恢,這是等於為匈奴報了仇啊。”
太后把田蚡的話告訴了武帝。武帝說:“王恢是馬邑計劃的主謀,我聽從了他的建議,調集了天下幾十萬人馬,安排了這次行動。況且,即使捉不到單于,王恢的軍隊襲擊匈奴的後勤給養,仍然可以安慰將士們的心。如今不殺王恢,無法向天下人謝罪。”王恢得知了武帝的話,就自殺了。
其實田蚡在這件事上的錯誤在於,他以為武帝想要對匈奴用兵,所以對於王恢這樣可用的人還有情分,因此才會從“王恢首為馬邑事,今不成而朱恢,是為匈奴報仇也”這個角度來勸諫,大意就是以後還要討匈奴,還是留著這樣熟知邊事的老臣吧,你因為這件事就殺了他,只會親者痛仇者快啊,田蚡正是自以為抓住了武帝這個心態才會進諫。
換個角度想,或許王恢的考慮也是同樣的,當他看到匈奴未曾入伏的時候首先考慮的是“然完陛下士三萬人”,這個考慮是基於軍事上的,他或許覺得這是個減輕罪責並讓武帝看到他軍事眼光的地方,所以雖然“固知還而斬”,卻並沒有真做“被斬”的準備,直到被定死罪後才想起來賄賂田蚡,以求逃生。
然而武帝的考慮與他們都不同,武帝想要改變政策,所以他需要一場勝利,退一步講,至少需要一場戰爭來開啟漢匈新局面,所以他重用王恢,想的是要得到一場大勝或者一場大戰可供誇耀,然而王恢卻沒有理解他的意思,居然把好好的一場大戰變成了邊境遊行,所以不殺也得殺了。
所以這就是各方考慮完全不同的問題,王恢預料到了“主和派”的反撲卻沒料到武帝根本不保他,田蚡看錯了武帝的心意所以勸諫無效,至於武帝,王恢令他大失所望再加上面臨著主和派的壓力,殺王恢既出氣又能平息輿論,何樂而不為呢?
當然,王恢最後還是弄明白了自己錯在哪裡,所以在廷尉說他“逗橈”的時候他還想著求生,直到他聽到武帝的意見之後方才知道自己再無生理,在這種情況下,自殺算是“有西漢特色的體面”了。