魏主曹睿命令張合作為先鋒,與司馬懿一同出征,同時又命令辛毗、孫禮二人帶領五萬大軍去協助曹真。兩人接受詔令後便出發了。司馬懿則率領二十萬大軍出關下寨,請先鋒張合到帳中說:“諸葛亮平生謹慎,從不敢冒險行事。如果是我用兵,直接從子午穀取道長安,早就到了。他不是沒有謀略,隻是怕有失誤,所以不敢冒險。現在他必定會出兵斜穀,來取郿城。如果取郿城,他必定會分兵兩路,一路取箕穀。我已經發檄文命令曹真在郿城防守,如果蜀兵來攻,不可出戰;又命令孫禮、辛毗在箕穀道口設伏,如果蜀兵來,就出奇兵攻擊。”張合問:“那將軍您準備在哪裏進兵呢?”司馬懿說:“我向來知道秦嶺的西邊有一條路,地名叫做街亭,旁邊還有一座城,叫做列柳城,這兩個地方都是漢中的咽喉要道。諸葛亮肯定會欺負曹真無備,從這裏進攻。我和你直接取道街亭,離陽平關就不遠了。如果諸葛亮知道我們斷了他的街亭要路,絕了他的糧道,那麽隴西一帶的蜀兵就不能安守,必然會連夜逃迴漢中去。他如果撤退,我們就在小路上伏擊他,可以大獲全勝;如果他不撤退,我們就把各處小路都堵死,派兵把守。這樣一來,蜀兵無糧可吃,一個月內必定餓死,諸葛亮也必定會被我們擒獲。”張合聽後大悟,跪拜說:“都督真是神算啊!”司馬懿又說:“雖然如此,但諸葛亮不同於孟達。你作為先鋒,不可輕敵冒進。要傳令給各位將領,沿著山的西邊,遠遠地探聽虛實。如果沒有伏兵,才可以前進。如果疏忽大意,必定會中諸葛亮的計策。”張合接受命令,引兵出發。
在祁山的軍營中,孔明突然接到從新城派來的探子的報告。孔明急忙召他進來詢問情況,探子報告說:“司馬懿帶著大軍倍道而行,隻用了八天時間就到達了新城。孟達措手不及,加上申耽、申儀、李輔、鄧賢等人作為內應,孟達被亂軍所殺。現在司馬懿已經撤兵迴到長安,見了魏主後,會同張合引兵出關,來抵抗我們的軍隊。”孔明聽後大驚說:“孟達做事不機密,死了也是活該。現在司馬懿出關,必定會奪取街亭,斷了我們的咽喉要道。”於是他問:“誰敢帶兵去守街亭?”話還沒說完,參軍馬謖就說:“我願意去。”孔明說:“街亭雖小,但關係重大。如果街亭失守,我們的大軍就危險了。你雖然深通謀略,但這裏既無城郭可守,又無險阻可憑,守起來非常困難。”馬謖說:“我從小熟讀兵書,頗知兵法。難道連一個小小的街亭都守不住嗎?”孔明說:“司馬懿不是等閑之輩,他還有先鋒張合這位魏國的名將助陣,恐怕你敵不過他們。”馬謖說:“別說是司馬懿、張合了,就算是曹睿親來,我也不怕!如果有什麽差池,我願意接受軍法處置,全家被殺也在所不惜。”孔明說:“軍中無戲言。”馬謖說:“我願意立下軍令狀。”於是他就寫了軍令狀呈給孔明。孔明說:“我給你二萬五千精兵,再派一員上將協助你去守街亭。”說完就叫來王平吩咐道:“我平時知道你做事謹慎小心,所以特地把這個重任托付給你。你要小心防守這個地方,下寨時必須選擇在要道之處,讓敵人不能輕易偷襲通過。安營紮寨之後要畫出四周八方的地理形狀圖送來給我看。凡事都要商議妥當後再行動不可輕率從事。如果你能守住街亭無虞那麽就是奪取長安的第一功臣了!一定要小心謹慎啊!”兩人拜別之後引兵而去。
孔明又考慮到可能兩人會有閃失於是又叫來高翔說:“在街亭東北方向上有一座城叫做柳城那裏有一條偏僻的山路可以作為屯兵紮寨的地方。我給你一萬兵馬去那裏駐紮防守。如果街亭有危險你可以帶兵去救援。”高翔領命帶兵而去。然而孔明又考慮到高翔可能不是張合的對手必須再派一員大將去街亭的右翼屯兵防守才能確保萬無一失。於是他又叫來魏延命令他帶領本部兵馬去街亭之後的地方駐紮防守。魏延卻說:“我是前部先鋒理應率先破敵為何讓我留在安逸之地呢?”
孔明對魏延說:“前鋒破敵隻是偏將的任務,現在讓你接應街亭,扼守陽平關這一衝要道路,總領漢中的咽喉地帶,這才是大任,怎麽能說是安閑呢?你不要輕視這個任務,如果失敗了會影響我的大事。你應該小心在意!”魏延聽後大喜,引兵而去。孔明這時才心安下來,又叫來趙雲和鄧芝,吩咐說:“現在司馬懿出兵,和以往不同。你們兩人各帶一軍出箕穀,作為疑兵。如果遇到魏兵,可以戰鬥也可以不戰鬥,目的是要讓他們心神不寧。我自己會統領大軍從斜穀直接攻取郿城,如果能得到郿城,長安就可以攻破了。”兩人接受命令後離去。孔明又命令薑維作為先鋒,出兵斜穀。
馬謖和王平兩人帶兵到達街亭後,觀察了地勢。馬謖笑著說:“丞相為什麽這麽多心呢?這個地方偏僻,魏兵怎麽敢來呢!”王平說:“雖然魏兵不敢來,但我們可以在這裏五路總口下寨,命令士兵砍伐樹木作為柵欄,為長期駐守做準備。”馬謖卻說:“在道路上怎麽能下寨呢?這裏側邊有一座山,四麵都不相連,而且樹木茂密,這是天賜的險地,我們可以在山上屯軍。”王平說:“參軍你錯了。如果在道路上駐軍,築起城牆,即使有十萬敵軍也不能偷偷通過。現在如果放棄這個要道,在山上屯兵,如果魏兵突然到來,四麵圍攻,我們怎麽保全自己呢?”馬謖大笑說:“你真是女人的見識!兵法上說:‘憑高視下,勢如劈竹。’如果魏兵到來,我會讓他們片甲不留!”王平說:“我多次跟隨丞相征戰,每到一處,丞相都盡心指導。現在看這座山,是絕地啊。如果魏兵切斷我們的水源,軍士們不戰自亂。”馬謖說:“你不要亂說!孫子說:‘置之死地而後生。’如果魏兵切斷我們的水源,蜀兵難道不會死戰嗎?一人可以當百人使用。我平時飽讀兵書,丞相很多事情還要問我,你為什麽要阻攔我呢!”王平說:“如果參軍想在山上駐軍,可以分一部分兵力給我,我在山西邊下一個小寨,形成掎角之勢。如果魏兵到來,可以互相支援。”但馬謖沒有聽從。
突然,山中的居民成群結隊地飛奔而來,報告說魏兵已經到了。王平想撤離,但馬謖說:“你既然不聽我的命令,我給你五千兵力你自己去下寨。等我打敗了魏兵,到丞相麵前你可別分我的功勞!”王平於是帶兵離山十裏下寨,並畫成圖本連夜派人去稟報孔明詳細說明了馬謖在山上駐軍的情況。
司馬懿在城中命令次子司馬昭去探察前路:如果街亭有兵力防守就暫時按兵不動。司馬昭奉命探察了一遍後迴來報告說:“街亭有兵力防守。”司馬懿歎息道:“諸葛亮真是神人啊我不如他!”但司馬昭笑著說:“父親為什麽要自己貶低自己呢?我認為街亭很容易攻取。”司馬懿問:“你怎麽敢出此大話?”司馬昭迴答說:“我親自偵察發現道路上並沒有設置寨柵而蜀軍都駐紮在山上所以我知道可以攻破。”司馬懿聽後大喜說:“如果蜀兵真的在山上駐軍那就是天助我成功了!”於是他更換衣服帶領百餘名騎兵親自去察看。那天天氣晴朗月光明亮司馬懿一直到山下周圍巡察了一遍才迴去。馬謖在山上看到後大笑說:“他們如果有膽量就不敢來圍攻我們!”他傳令給各位將領:“如果魏兵來攻隻看我山頂上紅旗揮動就四麵出擊。”
司馬懿迴到營寨後派人打聽是誰帶兵防守街亭。迴報說是馬良的弟弟馬謖。司馬懿笑著說:“他徒有虛名隻是個平庸之才!孔明用這樣的人怎麽會不誤事呢!”他又問:“街亭左右有沒有別的軍隊?”探馬報告說:“離山十裏有王平在那裏安營紮寨。”於是司馬懿命令張合帶領一支軍隊擋住王平的來路又命令申耽、申儀帶領兩路兵力圍攻蜀軍並首先切斷他們的水源等待蜀兵自亂然後再乘勢攻擊。當夜調度已定。
第二天天一亮張合就帶領軍隊前往街亭背後去了。司馬懿則率領大軍一擁而進把山四麵都圍了起來。馬謖在山上看到魏兵漫山遍野旌旗招展隊伍嚴整感到非常驚恐。蜀兵看到這種情況也都喪失了勇氣不敢下山。馬謖揮動紅旗命令出擊但蜀軍將士互相推諉沒有一個人敢動。馬謖大怒之下殺了兩個將領以儆效尤但蜀軍仍然驚恐不安隻得努力衝下山去攻擊魏兵然而魏兵卻巋然不動蜀兵又退迴到山上去了。馬謖看到情況不妙隻好命令軍隊緊守寨門等待外援的到來。
王平見到魏兵到來,引軍迎戰,正好遇到張合。兩人交戰數十迴合後,王平因力量懸殊和孤立無援,隻得撤退。魏兵從辰時一直圍困到戌時,由於山上無水,蜀軍無法進食,營寨中陷入混亂。到了半夜,山南的蜀兵打開寨門投降魏軍,馬謖無法製止。司馬懿又命人沿山放火,山上的蜀兵更加混亂。馬謖知道守不住了,隻得帶領殘兵從山西方向逃奔。司馬懿故意放開大路讓馬謖通過,然後派張合引兵追擊。
張合追了三十多裏,突然前方鼓角齊鳴,一彪軍殺出。這彪軍放過馬謖,卻攔住了張合的去路。張合一看,原來是魏延。魏延揮刀縱馬直取張合,張合迴軍便走。魏延驅兵趕來,想要奪迴街亭。但是追到五十多裏的時候,突然一聲呐喊,兩邊伏兵齊出。左邊是司馬懿,右邊是司馬昭,他們抄在魏延的背後,把魏延困在垓心。張合也迴軍再來合圍,三路兵合在一處。魏延左衝右突無法脫身,折損了大半的兵馬。正在危急關頭,忽然一彪軍殺入重圍,原來是王平。魏延大喜過望說:“我得救了!”於是兩人合兵一處大殺一陣才逼退魏兵。
然而當他們慌忙奔迴營寨時卻發現營中都是魏兵的旌旗原來申耽、申儀已經從營中殺出。王平和魏延隻得直奔列柳城去投靠高翔。此時高翔已經得知街亭失守的消息盡起列柳城的兵力前來救援。正好遇到王平和魏延兩人訴說前事。高翔建議說:“我們不如晚上去劫魏寨再奪迴街亭。”於是三人在山坡下商議已定。
待到天色將晚時分他們兵分三路進行行動。魏延引兵先進直到街亭但卻不見一人心中大疑未敢輕進於是在路口埋伏等候。不久高翔的兵也到了兩人都說不知道魏兵在哪裏。正在此時忽然一聲炮響火光衝天鼓聲震地魏兵從四麵八方湧出把魏延和高翔圍在垓心。兩人奮力衝突但無法脫身。
忽然聽得山坡後喊聲若雷一彪軍殺入重圍原來是王平引兵來救。他救了魏延和高翔兩人之後直奔列柳城而來。然而當他們奔到城下時卻發現城邊已經有一軍殺到旗上大寫“魏都督郭淮”字樣。原來郭淮與曹真商議後擔心司馬懿獨得全功於是分兵讓郭淮來取街亭。郭淮得知司馬懿和張合已經成功於是引兵直襲列柳城。正好遇到王平、魏延和高翔三人於是大殺一陣蜀兵傷亡慘重。
魏延擔心陽平關有失於是慌忙與王平和高翔一起撤向陽平關。郭淮收了軍馬後對左右說:“我雖然沒能得到街亭但卻取了列柳城也算是大功一件。”於是他引兵到城下叫門。隻見城上一聲炮響旗幟皆豎當頭一麵大旗上寫著“平西都督司馬懿”。司馬懿撐起懸空板倚定護心木欄幹大笑說:“郭伯濟你來得怎麽這麽遲啊?”郭淮大驚說:“仲達你真是神機妙算我不如你啊!”於是入城與司馬懿相見。
見麵之後司馬懿說:“現在街亭已經失守諸葛亮必定會逃走。你可以趕快和曹真一起星夜追擊他。”郭淮聽從了他的建議出城而去。司馬懿又喚來張合說:“子丹和伯濟擔心我獨得大功所以來取這座城池。我其實並不是隻想成功而是僥幸得勝而已。我料想魏延、王平、馬謖、高翔等人必定會先去占據陽平關。如果我們去取陽平關諸葛亮必定會趁機從後麵掩殺過來那樣我們就中了他的計策了。《兵法》上說:‘歸師勿掩窮寇莫追。’你可以從小路抄到箕穀退兵我在斜穀這裏擋住蜀兵。如果他們敗逃了你不要追擊隻要在中途截住他們就可以了。這樣蜀兵的輜重物資我們就可以全部得到了。”張合接受了司馬懿的計策帶著一半的兵力離開了。
司馬懿下令說:“我們直接取斜穀由西城而進。西城雖然是一個山僻小縣但卻是蜀兵屯糧的地方又是南安、天水、安定三郡的總路。如果我們能夠得到這個城池那麽三郡就可以收複了。”於是司馬懿留下申耽和申儀守列柳城自己帶領大軍向斜穀進發。
孔明自從命令馬謖等人防守街亭後,一直感到猶豫不定。忽然,有報信的人送來了王平畫的圖本。孔明立即召見,並在書桌上拆開了圖本。一看之下,他大驚失色,拍案而起:“馬謖無知,坑陷了我軍啊!”旁邊的人問:“丞相為何如此驚慌?”孔明迴答說:“我看這圖本,馬謖放棄了重要的道路,卻選擇山上紮營。如果魏兵大舉進攻,四麵合圍,切斷水源,不用兩天,我軍就會自亂。如果街亭失守,我們怎麽迴去?”長史楊儀進言說:“我雖然不才,但願意替馬謖去守街亭。”孔明將安營的方法一一傳授給楊儀,正準備出發,忽然又有消息傳來,說街亭、列柳城都已經失守了。孔明跌足長歎:“大事已去,這是我的過錯啊!”他急忙召見關興、張苞,吩咐說:“你們兩人各帶三千精兵,從小路投奔武功山。如果遇到魏兵,不要硬拚,隻要大聲鼓噪呐喊,裝作疑兵嚇唬他們。他們自然會逃走,也不要追趕。等到軍隊都撤退了,就投奔陽平關去。”孔明又命令張翼先去修理劍閣,以備歸路。又秘密傳令,讓大軍暗暗收拾行裝,準備啟程。又命令馬岱、薑維斷後,先埋伏在山穀中,等到各軍都撤退了,再收兵。孔明又分派心腹之人,分路去通知天水、南安、安定三郡的官吏軍民,叫他們全部撤入漢中。又派心腹之人去冀縣接取薑維的母親,送入漢中。
孔明分派完畢,先帶五千兵退去西城縣搬運糧草。忽然,十幾次飛馬報到,說司馬懿率領十五萬大軍,像蜂擁一樣向西城殺來。當時孔明身邊沒有大將,隻有一班文官,所帶的五千兵已經分出一半去運糧草了,隻剩下二千五百兵在城中。眾官聽到這個消息,都嚇得變了臉色。孔明登城望去,果然塵土衝天,魏兵分兩路向西城縣殺來。孔明傳令將旌旗全部隱藏起來,各軍各自守住城鋪,如有擅自出入或高聲說話的人就斬首。他大開四門,每一門用二十個軍士扮作百姓灑掃街道。孔明說:“如果魏兵到了,不要擅自行動,我自有計策。”於是孔明披上鶴氅,戴上綸巾,帶著兩個小童和一張琴,在城樓上敵樓前憑欄而坐,焚香彈琴。
司馬懿的前軍哨兵到城下看到這種情況都不敢進,急忙報告給司馬懿。司馬懿笑著不相信會有這種事,於是止住三軍自己飛馬遠遠望去。果然看到孔明坐在城樓上笑容可掬地焚香彈琴。左邊有一個童子手捧寶劍;右邊有一個童子手執麈尾。城門內外有二十多個百姓低頭灑掃旁若無人。司馬懿看完後非常疑惑便到中軍教後軍作前軍前軍作後軍望北山路而退。次子司馬昭說:“莫非諸葛亮沒有軍隊故意做出這種姿態?父親為什麽就要退兵?”司馬懿說:“諸葛亮平生謹慎不曾冒險。現在大開城門必定有埋伏。我軍如果進攻就會中他的計策。你們怎麽會知道?應該迅速撤退。”於是兩路兵馬都撤退了。孔明看到魏軍遠去便拍手大笑。眾官都非常驚駭問孔明說:“司馬懿是魏國的名將現在率領十五萬精兵到這裏看到丞相就迅速撤退了這是為什麽?”孔明說:“他料到我平生謹慎必定不會冒險。看到這種模樣懷疑有伏兵所以就撤退了。我並不是冒險而是因為不得已才這樣做。他必定引軍從山北小路退去。我已經命令關興、張苞二人在那裏等候了。”眾人都驚歎佩服說:“丞相的計策真是神鬼莫測啊!如果換成我們的見解早就棄城逃走了。”
孔明說:“我們的兵力隻有二千五百人,如果放棄城池逃跑,必然不能逃遠。那豈不是會被司馬懿擒獲嗎?”後人有詩讚美孔明這次的智謀:“瑤琴三尺勝雄師,諸葛西城退敵時。十五萬人迴馬處,土人指點到今疑。”孔明說完後,拍手大笑說:“如果我是司馬懿,我一定不會選擇撤退。”於是孔明下令讓西城的百姓隨軍進入漢中,因為預料到司馬懿必定會再來。然後孔明就離開了西城,前往漢中。天水、安定、南安三郡的官吏和軍民也陸續前來會合。
司馬懿則選擇了望武功山的小路撤退。忽然,山坡後麵喊聲震天,鼓聲隆隆。司馬懿迴頭對兩個兒子說:“如果我們不撤退,就中了諸葛亮的計策了。”隻見大路上一支軍隊殺來,旗幟上寫著:“右護衛使虎翼將軍張苞”。魏兵紛紛丟棄兵器逃跑。他們還沒跑多遠,山穀中又傳來震天的喊聲和喧天的鼓角聲。前麵有一杆大旗,上麵寫著:“左護衛使龍驤將軍關興”。山穀中迴聲陣陣,不知道有多少蜀兵。加上魏軍心中疑慮,不敢久留,隻得丟棄全部輜重逃跑。張苞和關興都遵守孔明的命令,沒有追擊,隻是收獲了大量的軍器和糧草後返迴。
司馬懿看到山穀中到處都是蜀兵,不敢走大路,於是返迴街亭。此時曹真聽說孔明已經撤兵,急忙帶兵追趕。但山背後一聲炮響,蜀兵像漫山遍野的螞蟻一樣湧來。為首的大將是薑維和馬岱。曹真大驚失色,急忙撤退。但這時他的先鋒陳造已經被馬岱斬殺。曹真帶著殘兵敗將狼狽逃迴。蜀兵則連夜奔迴漢中。
與此同時,趙雲和鄧芝在箕穀道中埋伏。聽到孔明傳令撤兵的消息後,趙雲對鄧芝說:“魏軍知道我們撤兵,一定會來追趕。我先帶一軍在後麵埋伏,你打著我們的旗號慢慢撤退。我會一步步地護送你們。”
果然不出趙雲所料,郭淮再次提兵迴到箕穀道中。他命令先鋒蘇顒要小心提防趙雲,因為趙雲英勇無敵。如果蜀軍撤退,一定有詭計。蘇顒欣然領命而去,帶著前部三千兵士衝入箕穀。眼看著就要追上蜀兵時,隻見山坡後麵閃出紅旗白字的大旗,上麵寫著“趙雲”。蘇顒大驚失色,急忙收兵撤退。但沒走多遠就遇到趙雲率領的一彪軍殺出。趙雲挺槍躍馬大喝道:“你認識趙子龍嗎?”蘇顒措手不及被趙雲一槍刺死在馬下。餘下的魏軍潰散而逃。
趙雲繼續前進卻遇到郭淮的部將萬政率軍趕來。看到魏兵追得緊急趙雲勒馬挺槍立在路口等待交鋒——此時蜀兵已經去遠了三十多裏。萬政認出是趙雲後不敢前進。趙雲等到天色黃昏時才撥轉馬頭緩緩前進。郭淮的大軍趕到後萬政告訴他們趙雲依然英勇無敵因此他們也不敢輕易追擊。郭淮下令讓士兵們急忙追趕但趙雲已經率領數百名騎兵壯士進入了一片密林。忽然背後傳來一聲大喝:“趙子龍在此!”這聲大喝嚇得魏兵百餘人落馬其餘的都越過山嶺逃跑去了。萬政勉強上前迎戰但被趙雲一箭射中了頭盔上的纓子驚嚇得跌入山澗中。趙雲用槍指著他說:“我饒你一命迴去!快叫郭淮來追我!”萬政撿迴一條命逃迴去報告了情況。
最終趙雲成功地護送了車仗人馬迴到漢中沿途沒有任何損失。而曹真和郭淮雖然重新奪迴了三郡但卻把這次的勝利歸功於自己而非孔明的智謀。
司馬懿分兵前進,此時蜀兵已經全部撤迴漢中。他帶領一支軍隊再次來到西城,詢問留下的居民以及山中的隱士,他們都說孔明在城中隻有二千五百兵士,沒有武將,隻有幾個文官,並沒有其他埋伏。武功山的小民也告訴他:“關興、張苞各自隻有三千兵馬,他們在山中呐喊、鼓噪,虛張聲勢,但並沒有其他軍隊,也不敢與我們交戰。”司馬懿聽後後悔不已,仰頭歎息道:“我不如孔明啊!”
隨後,司馬懿安撫了各處的官員和百姓,帶領軍隊直接返迴長安,朝見魏主曹睿。曹睿對他說:“今天能夠重新奪迴隴西各郡,都是你的功勞。”司馬懿奏報說:“現在蜀兵都集中在漢中,我們還沒有將他們全部消滅。我請求陛下增派大軍,合力收複蜀川,以報答陛下的恩德。”曹睿非常高興,命令司馬懿立即興兵。
忽然,班中有一人站出來奏報說:“我有一個計策,足以讓蜀國投降,吳國歸順。”
在祁山的軍營中,孔明突然接到從新城派來的探子的報告。孔明急忙召他進來詢問情況,探子報告說:“司馬懿帶著大軍倍道而行,隻用了八天時間就到達了新城。孟達措手不及,加上申耽、申儀、李輔、鄧賢等人作為內應,孟達被亂軍所殺。現在司馬懿已經撤兵迴到長安,見了魏主後,會同張合引兵出關,來抵抗我們的軍隊。”孔明聽後大驚說:“孟達做事不機密,死了也是活該。現在司馬懿出關,必定會奪取街亭,斷了我們的咽喉要道。”於是他問:“誰敢帶兵去守街亭?”話還沒說完,參軍馬謖就說:“我願意去。”孔明說:“街亭雖小,但關係重大。如果街亭失守,我們的大軍就危險了。你雖然深通謀略,但這裏既無城郭可守,又無險阻可憑,守起來非常困難。”馬謖說:“我從小熟讀兵書,頗知兵法。難道連一個小小的街亭都守不住嗎?”孔明說:“司馬懿不是等閑之輩,他還有先鋒張合這位魏國的名將助陣,恐怕你敵不過他們。”馬謖說:“別說是司馬懿、張合了,就算是曹睿親來,我也不怕!如果有什麽差池,我願意接受軍法處置,全家被殺也在所不惜。”孔明說:“軍中無戲言。”馬謖說:“我願意立下軍令狀。”於是他就寫了軍令狀呈給孔明。孔明說:“我給你二萬五千精兵,再派一員上將協助你去守街亭。”說完就叫來王平吩咐道:“我平時知道你做事謹慎小心,所以特地把這個重任托付給你。你要小心防守這個地方,下寨時必須選擇在要道之處,讓敵人不能輕易偷襲通過。安營紮寨之後要畫出四周八方的地理形狀圖送來給我看。凡事都要商議妥當後再行動不可輕率從事。如果你能守住街亭無虞那麽就是奪取長安的第一功臣了!一定要小心謹慎啊!”兩人拜別之後引兵而去。
孔明又考慮到可能兩人會有閃失於是又叫來高翔說:“在街亭東北方向上有一座城叫做柳城那裏有一條偏僻的山路可以作為屯兵紮寨的地方。我給你一萬兵馬去那裏駐紮防守。如果街亭有危險你可以帶兵去救援。”高翔領命帶兵而去。然而孔明又考慮到高翔可能不是張合的對手必須再派一員大將去街亭的右翼屯兵防守才能確保萬無一失。於是他又叫來魏延命令他帶領本部兵馬去街亭之後的地方駐紮防守。魏延卻說:“我是前部先鋒理應率先破敵為何讓我留在安逸之地呢?”
孔明對魏延說:“前鋒破敵隻是偏將的任務,現在讓你接應街亭,扼守陽平關這一衝要道路,總領漢中的咽喉地帶,這才是大任,怎麽能說是安閑呢?你不要輕視這個任務,如果失敗了會影響我的大事。你應該小心在意!”魏延聽後大喜,引兵而去。孔明這時才心安下來,又叫來趙雲和鄧芝,吩咐說:“現在司馬懿出兵,和以往不同。你們兩人各帶一軍出箕穀,作為疑兵。如果遇到魏兵,可以戰鬥也可以不戰鬥,目的是要讓他們心神不寧。我自己會統領大軍從斜穀直接攻取郿城,如果能得到郿城,長安就可以攻破了。”兩人接受命令後離去。孔明又命令薑維作為先鋒,出兵斜穀。
馬謖和王平兩人帶兵到達街亭後,觀察了地勢。馬謖笑著說:“丞相為什麽這麽多心呢?這個地方偏僻,魏兵怎麽敢來呢!”王平說:“雖然魏兵不敢來,但我們可以在這裏五路總口下寨,命令士兵砍伐樹木作為柵欄,為長期駐守做準備。”馬謖卻說:“在道路上怎麽能下寨呢?這裏側邊有一座山,四麵都不相連,而且樹木茂密,這是天賜的險地,我們可以在山上屯軍。”王平說:“參軍你錯了。如果在道路上駐軍,築起城牆,即使有十萬敵軍也不能偷偷通過。現在如果放棄這個要道,在山上屯兵,如果魏兵突然到來,四麵圍攻,我們怎麽保全自己呢?”馬謖大笑說:“你真是女人的見識!兵法上說:‘憑高視下,勢如劈竹。’如果魏兵到來,我會讓他們片甲不留!”王平說:“我多次跟隨丞相征戰,每到一處,丞相都盡心指導。現在看這座山,是絕地啊。如果魏兵切斷我們的水源,軍士們不戰自亂。”馬謖說:“你不要亂說!孫子說:‘置之死地而後生。’如果魏兵切斷我們的水源,蜀兵難道不會死戰嗎?一人可以當百人使用。我平時飽讀兵書,丞相很多事情還要問我,你為什麽要阻攔我呢!”王平說:“如果參軍想在山上駐軍,可以分一部分兵力給我,我在山西邊下一個小寨,形成掎角之勢。如果魏兵到來,可以互相支援。”但馬謖沒有聽從。
突然,山中的居民成群結隊地飛奔而來,報告說魏兵已經到了。王平想撤離,但馬謖說:“你既然不聽我的命令,我給你五千兵力你自己去下寨。等我打敗了魏兵,到丞相麵前你可別分我的功勞!”王平於是帶兵離山十裏下寨,並畫成圖本連夜派人去稟報孔明詳細說明了馬謖在山上駐軍的情況。
司馬懿在城中命令次子司馬昭去探察前路:如果街亭有兵力防守就暫時按兵不動。司馬昭奉命探察了一遍後迴來報告說:“街亭有兵力防守。”司馬懿歎息道:“諸葛亮真是神人啊我不如他!”但司馬昭笑著說:“父親為什麽要自己貶低自己呢?我認為街亭很容易攻取。”司馬懿問:“你怎麽敢出此大話?”司馬昭迴答說:“我親自偵察發現道路上並沒有設置寨柵而蜀軍都駐紮在山上所以我知道可以攻破。”司馬懿聽後大喜說:“如果蜀兵真的在山上駐軍那就是天助我成功了!”於是他更換衣服帶領百餘名騎兵親自去察看。那天天氣晴朗月光明亮司馬懿一直到山下周圍巡察了一遍才迴去。馬謖在山上看到後大笑說:“他們如果有膽量就不敢來圍攻我們!”他傳令給各位將領:“如果魏兵來攻隻看我山頂上紅旗揮動就四麵出擊。”
司馬懿迴到營寨後派人打聽是誰帶兵防守街亭。迴報說是馬良的弟弟馬謖。司馬懿笑著說:“他徒有虛名隻是個平庸之才!孔明用這樣的人怎麽會不誤事呢!”他又問:“街亭左右有沒有別的軍隊?”探馬報告說:“離山十裏有王平在那裏安營紮寨。”於是司馬懿命令張合帶領一支軍隊擋住王平的來路又命令申耽、申儀帶領兩路兵力圍攻蜀軍並首先切斷他們的水源等待蜀兵自亂然後再乘勢攻擊。當夜調度已定。
第二天天一亮張合就帶領軍隊前往街亭背後去了。司馬懿則率領大軍一擁而進把山四麵都圍了起來。馬謖在山上看到魏兵漫山遍野旌旗招展隊伍嚴整感到非常驚恐。蜀兵看到這種情況也都喪失了勇氣不敢下山。馬謖揮動紅旗命令出擊但蜀軍將士互相推諉沒有一個人敢動。馬謖大怒之下殺了兩個將領以儆效尤但蜀軍仍然驚恐不安隻得努力衝下山去攻擊魏兵然而魏兵卻巋然不動蜀兵又退迴到山上去了。馬謖看到情況不妙隻好命令軍隊緊守寨門等待外援的到來。
王平見到魏兵到來,引軍迎戰,正好遇到張合。兩人交戰數十迴合後,王平因力量懸殊和孤立無援,隻得撤退。魏兵從辰時一直圍困到戌時,由於山上無水,蜀軍無法進食,營寨中陷入混亂。到了半夜,山南的蜀兵打開寨門投降魏軍,馬謖無法製止。司馬懿又命人沿山放火,山上的蜀兵更加混亂。馬謖知道守不住了,隻得帶領殘兵從山西方向逃奔。司馬懿故意放開大路讓馬謖通過,然後派張合引兵追擊。
張合追了三十多裏,突然前方鼓角齊鳴,一彪軍殺出。這彪軍放過馬謖,卻攔住了張合的去路。張合一看,原來是魏延。魏延揮刀縱馬直取張合,張合迴軍便走。魏延驅兵趕來,想要奪迴街亭。但是追到五十多裏的時候,突然一聲呐喊,兩邊伏兵齊出。左邊是司馬懿,右邊是司馬昭,他們抄在魏延的背後,把魏延困在垓心。張合也迴軍再來合圍,三路兵合在一處。魏延左衝右突無法脫身,折損了大半的兵馬。正在危急關頭,忽然一彪軍殺入重圍,原來是王平。魏延大喜過望說:“我得救了!”於是兩人合兵一處大殺一陣才逼退魏兵。
然而當他們慌忙奔迴營寨時卻發現營中都是魏兵的旌旗原來申耽、申儀已經從營中殺出。王平和魏延隻得直奔列柳城去投靠高翔。此時高翔已經得知街亭失守的消息盡起列柳城的兵力前來救援。正好遇到王平和魏延兩人訴說前事。高翔建議說:“我們不如晚上去劫魏寨再奪迴街亭。”於是三人在山坡下商議已定。
待到天色將晚時分他們兵分三路進行行動。魏延引兵先進直到街亭但卻不見一人心中大疑未敢輕進於是在路口埋伏等候。不久高翔的兵也到了兩人都說不知道魏兵在哪裏。正在此時忽然一聲炮響火光衝天鼓聲震地魏兵從四麵八方湧出把魏延和高翔圍在垓心。兩人奮力衝突但無法脫身。
忽然聽得山坡後喊聲若雷一彪軍殺入重圍原來是王平引兵來救。他救了魏延和高翔兩人之後直奔列柳城而來。然而當他們奔到城下時卻發現城邊已經有一軍殺到旗上大寫“魏都督郭淮”字樣。原來郭淮與曹真商議後擔心司馬懿獨得全功於是分兵讓郭淮來取街亭。郭淮得知司馬懿和張合已經成功於是引兵直襲列柳城。正好遇到王平、魏延和高翔三人於是大殺一陣蜀兵傷亡慘重。
魏延擔心陽平關有失於是慌忙與王平和高翔一起撤向陽平關。郭淮收了軍馬後對左右說:“我雖然沒能得到街亭但卻取了列柳城也算是大功一件。”於是他引兵到城下叫門。隻見城上一聲炮響旗幟皆豎當頭一麵大旗上寫著“平西都督司馬懿”。司馬懿撐起懸空板倚定護心木欄幹大笑說:“郭伯濟你來得怎麽這麽遲啊?”郭淮大驚說:“仲達你真是神機妙算我不如你啊!”於是入城與司馬懿相見。
見麵之後司馬懿說:“現在街亭已經失守諸葛亮必定會逃走。你可以趕快和曹真一起星夜追擊他。”郭淮聽從了他的建議出城而去。司馬懿又喚來張合說:“子丹和伯濟擔心我獨得大功所以來取這座城池。我其實並不是隻想成功而是僥幸得勝而已。我料想魏延、王平、馬謖、高翔等人必定會先去占據陽平關。如果我們去取陽平關諸葛亮必定會趁機從後麵掩殺過來那樣我們就中了他的計策了。《兵法》上說:‘歸師勿掩窮寇莫追。’你可以從小路抄到箕穀退兵我在斜穀這裏擋住蜀兵。如果他們敗逃了你不要追擊隻要在中途截住他們就可以了。這樣蜀兵的輜重物資我們就可以全部得到了。”張合接受了司馬懿的計策帶著一半的兵力離開了。
司馬懿下令說:“我們直接取斜穀由西城而進。西城雖然是一個山僻小縣但卻是蜀兵屯糧的地方又是南安、天水、安定三郡的總路。如果我們能夠得到這個城池那麽三郡就可以收複了。”於是司馬懿留下申耽和申儀守列柳城自己帶領大軍向斜穀進發。
孔明自從命令馬謖等人防守街亭後,一直感到猶豫不定。忽然,有報信的人送來了王平畫的圖本。孔明立即召見,並在書桌上拆開了圖本。一看之下,他大驚失色,拍案而起:“馬謖無知,坑陷了我軍啊!”旁邊的人問:“丞相為何如此驚慌?”孔明迴答說:“我看這圖本,馬謖放棄了重要的道路,卻選擇山上紮營。如果魏兵大舉進攻,四麵合圍,切斷水源,不用兩天,我軍就會自亂。如果街亭失守,我們怎麽迴去?”長史楊儀進言說:“我雖然不才,但願意替馬謖去守街亭。”孔明將安營的方法一一傳授給楊儀,正準備出發,忽然又有消息傳來,說街亭、列柳城都已經失守了。孔明跌足長歎:“大事已去,這是我的過錯啊!”他急忙召見關興、張苞,吩咐說:“你們兩人各帶三千精兵,從小路投奔武功山。如果遇到魏兵,不要硬拚,隻要大聲鼓噪呐喊,裝作疑兵嚇唬他們。他們自然會逃走,也不要追趕。等到軍隊都撤退了,就投奔陽平關去。”孔明又命令張翼先去修理劍閣,以備歸路。又秘密傳令,讓大軍暗暗收拾行裝,準備啟程。又命令馬岱、薑維斷後,先埋伏在山穀中,等到各軍都撤退了,再收兵。孔明又分派心腹之人,分路去通知天水、南安、安定三郡的官吏軍民,叫他們全部撤入漢中。又派心腹之人去冀縣接取薑維的母親,送入漢中。
孔明分派完畢,先帶五千兵退去西城縣搬運糧草。忽然,十幾次飛馬報到,說司馬懿率領十五萬大軍,像蜂擁一樣向西城殺來。當時孔明身邊沒有大將,隻有一班文官,所帶的五千兵已經分出一半去運糧草了,隻剩下二千五百兵在城中。眾官聽到這個消息,都嚇得變了臉色。孔明登城望去,果然塵土衝天,魏兵分兩路向西城縣殺來。孔明傳令將旌旗全部隱藏起來,各軍各自守住城鋪,如有擅自出入或高聲說話的人就斬首。他大開四門,每一門用二十個軍士扮作百姓灑掃街道。孔明說:“如果魏兵到了,不要擅自行動,我自有計策。”於是孔明披上鶴氅,戴上綸巾,帶著兩個小童和一張琴,在城樓上敵樓前憑欄而坐,焚香彈琴。
司馬懿的前軍哨兵到城下看到這種情況都不敢進,急忙報告給司馬懿。司馬懿笑著不相信會有這種事,於是止住三軍自己飛馬遠遠望去。果然看到孔明坐在城樓上笑容可掬地焚香彈琴。左邊有一個童子手捧寶劍;右邊有一個童子手執麈尾。城門內外有二十多個百姓低頭灑掃旁若無人。司馬懿看完後非常疑惑便到中軍教後軍作前軍前軍作後軍望北山路而退。次子司馬昭說:“莫非諸葛亮沒有軍隊故意做出這種姿態?父親為什麽就要退兵?”司馬懿說:“諸葛亮平生謹慎不曾冒險。現在大開城門必定有埋伏。我軍如果進攻就會中他的計策。你們怎麽會知道?應該迅速撤退。”於是兩路兵馬都撤退了。孔明看到魏軍遠去便拍手大笑。眾官都非常驚駭問孔明說:“司馬懿是魏國的名將現在率領十五萬精兵到這裏看到丞相就迅速撤退了這是為什麽?”孔明說:“他料到我平生謹慎必定不會冒險。看到這種模樣懷疑有伏兵所以就撤退了。我並不是冒險而是因為不得已才這樣做。他必定引軍從山北小路退去。我已經命令關興、張苞二人在那裏等候了。”眾人都驚歎佩服說:“丞相的計策真是神鬼莫測啊!如果換成我們的見解早就棄城逃走了。”
孔明說:“我們的兵力隻有二千五百人,如果放棄城池逃跑,必然不能逃遠。那豈不是會被司馬懿擒獲嗎?”後人有詩讚美孔明這次的智謀:“瑤琴三尺勝雄師,諸葛西城退敵時。十五萬人迴馬處,土人指點到今疑。”孔明說完後,拍手大笑說:“如果我是司馬懿,我一定不會選擇撤退。”於是孔明下令讓西城的百姓隨軍進入漢中,因為預料到司馬懿必定會再來。然後孔明就離開了西城,前往漢中。天水、安定、南安三郡的官吏和軍民也陸續前來會合。
司馬懿則選擇了望武功山的小路撤退。忽然,山坡後麵喊聲震天,鼓聲隆隆。司馬懿迴頭對兩個兒子說:“如果我們不撤退,就中了諸葛亮的計策了。”隻見大路上一支軍隊殺來,旗幟上寫著:“右護衛使虎翼將軍張苞”。魏兵紛紛丟棄兵器逃跑。他們還沒跑多遠,山穀中又傳來震天的喊聲和喧天的鼓角聲。前麵有一杆大旗,上麵寫著:“左護衛使龍驤將軍關興”。山穀中迴聲陣陣,不知道有多少蜀兵。加上魏軍心中疑慮,不敢久留,隻得丟棄全部輜重逃跑。張苞和關興都遵守孔明的命令,沒有追擊,隻是收獲了大量的軍器和糧草後返迴。
司馬懿看到山穀中到處都是蜀兵,不敢走大路,於是返迴街亭。此時曹真聽說孔明已經撤兵,急忙帶兵追趕。但山背後一聲炮響,蜀兵像漫山遍野的螞蟻一樣湧來。為首的大將是薑維和馬岱。曹真大驚失色,急忙撤退。但這時他的先鋒陳造已經被馬岱斬殺。曹真帶著殘兵敗將狼狽逃迴。蜀兵則連夜奔迴漢中。
與此同時,趙雲和鄧芝在箕穀道中埋伏。聽到孔明傳令撤兵的消息後,趙雲對鄧芝說:“魏軍知道我們撤兵,一定會來追趕。我先帶一軍在後麵埋伏,你打著我們的旗號慢慢撤退。我會一步步地護送你們。”
果然不出趙雲所料,郭淮再次提兵迴到箕穀道中。他命令先鋒蘇顒要小心提防趙雲,因為趙雲英勇無敵。如果蜀軍撤退,一定有詭計。蘇顒欣然領命而去,帶著前部三千兵士衝入箕穀。眼看著就要追上蜀兵時,隻見山坡後麵閃出紅旗白字的大旗,上麵寫著“趙雲”。蘇顒大驚失色,急忙收兵撤退。但沒走多遠就遇到趙雲率領的一彪軍殺出。趙雲挺槍躍馬大喝道:“你認識趙子龍嗎?”蘇顒措手不及被趙雲一槍刺死在馬下。餘下的魏軍潰散而逃。
趙雲繼續前進卻遇到郭淮的部將萬政率軍趕來。看到魏兵追得緊急趙雲勒馬挺槍立在路口等待交鋒——此時蜀兵已經去遠了三十多裏。萬政認出是趙雲後不敢前進。趙雲等到天色黃昏時才撥轉馬頭緩緩前進。郭淮的大軍趕到後萬政告訴他們趙雲依然英勇無敵因此他們也不敢輕易追擊。郭淮下令讓士兵們急忙追趕但趙雲已經率領數百名騎兵壯士進入了一片密林。忽然背後傳來一聲大喝:“趙子龍在此!”這聲大喝嚇得魏兵百餘人落馬其餘的都越過山嶺逃跑去了。萬政勉強上前迎戰但被趙雲一箭射中了頭盔上的纓子驚嚇得跌入山澗中。趙雲用槍指著他說:“我饒你一命迴去!快叫郭淮來追我!”萬政撿迴一條命逃迴去報告了情況。
最終趙雲成功地護送了車仗人馬迴到漢中沿途沒有任何損失。而曹真和郭淮雖然重新奪迴了三郡但卻把這次的勝利歸功於自己而非孔明的智謀。
司馬懿分兵前進,此時蜀兵已經全部撤迴漢中。他帶領一支軍隊再次來到西城,詢問留下的居民以及山中的隱士,他們都說孔明在城中隻有二千五百兵士,沒有武將,隻有幾個文官,並沒有其他埋伏。武功山的小民也告訴他:“關興、張苞各自隻有三千兵馬,他們在山中呐喊、鼓噪,虛張聲勢,但並沒有其他軍隊,也不敢與我們交戰。”司馬懿聽後後悔不已,仰頭歎息道:“我不如孔明啊!”
隨後,司馬懿安撫了各處的官員和百姓,帶領軍隊直接返迴長安,朝見魏主曹睿。曹睿對他說:“今天能夠重新奪迴隴西各郡,都是你的功勞。”司馬懿奏報說:“現在蜀兵都集中在漢中,我們還沒有將他們全部消滅。我請求陛下增派大軍,合力收複蜀川,以報答陛下的恩德。”曹睿非常高興,命令司馬懿立即興兵。
忽然,班中有一人站出來奏報說:“我有一個計策,足以讓蜀國投降,吳國歸順。”