西駕長安的魏明帝,一麵派右將軍張郃督步騎五萬,自長安西進,以拒蜀軍。一麵派大將軍曹真守陳倉,以拒箕穀之蜀軍。坐鎮西城的諸葛亮,得知張郃前來拒戰,重新部署了作戰計劃。諸葛亮“違眾拔謖”,派參軍馬謖督諸軍在前,首先固守街亭。行事謹慎、思慮周詳的諸葛亮,為了保證至關全局的街亭之戰萬無一失,又派將軍高詳為其翼,屯兵列柳城;派稗將軍王平、督將軍李盛、黃襲、張休等皆隨馬謖疾赴街亭,以拒魏軍。並對副將王平說:“下寨必當要道之處,使賊兵急切不能偷過。安營既畢,便畫四至八道地理形狀圖本來我看。”
兵赴街亭,不料馬謖既不按照諸葛亮的部署行事,又不聽稗將王平的諫阻,“依阻南山,不下拒城”。馬謖道:“憑高視下,勢如破竹,置之死地而後生。”王平數諫無效,不得已領千人屯兵於街亭之後,以防街亭危急,引兵營救。張郃得知馬謖舍水上山,不下拒城,疾驅大軍,包圍南山,絕其汲道。魏軍加緊攻山,蜀軍久困渴乏,出戰接連失利,馬謖料難固守,突圍而逃,眾皆星散。王平正欲相救,卻遇張郃迎麵殺來,
王平力窮勢孤,鳴鼓自守。張郃疑有伏兵,不敢進逼。王平徐徐收合諸營潰兵撤退。同時,固守列柳城的高詳也被魏將郭淮所破。諸葛亮得知街亭失守,進無所拒,難以在隴右長駐,不得已遷西縣千餘戶退還漢中。街亭一戰是一場戰役的失敗,丟了街亭,使蜀魏的優劣之勢馬上發生了逆轉。街亭一役,蜀軍主力潰敗。用諸葛亮的話說:“時師出無成,傷缺而反者眾,三郡歸降而不能有;薑維,天水之匹夫耳,獲之則於魏何損。拔西縣千家,不補街亭所喪。”說明在當時什麼也比不上街亭失守之重要。
運籌多年的北伐,一出師就先聲奪人。在三郡應亮,關中響震,曹魏“朝臣未知計之所出”的形勢下,諸葛亮沒有忘記要把固守街亭放在重要位置的戰略構想。當時,蜀軍在祁山、鹵城、西城一帶,天水關仍被中郎將薑維鎮守。上邽城城門緊閉,被秦州刺史郭淮和棄冀城(天水郡治)而逃的天水太守馬遵固守。不拿下這些戰略咽喉之地,蜀軍就不能放膽東進。在蜀軍東進受阻的情況下,守住街亭尤為重要。因為蜀魏兩軍爭占的鋒線已是關隴大道,街亭位於關隴大道的咽喉之地,誰控製了這條大道,誰就在軍事上占了優勢與主動權。
從祁山發兵到街亭,路途迂遠,行進艱難,既要跋山涉水,又要沿途作戰,即使日夜兼行,到達街亭也得三四天。但是為了遏阻魏軍翻越隴山,進入隴右,諸葛亮下了很大決心一定要守住街亭。但派誰承擔此任最為合適?“一生唯謹慎”的諸葛亮,在這個關鍵時刻的關鍵人選上沒有聽取眾臣意見,選派了“好論軍機,言過其實”的馬謖承擔了此一重任。出兵前,諸葛亮告誡馬謖“兵紮要道”的目的,就是利用街亭能攻能守的特點,在敵強我弱的情況下,采用“推衍兵法,作八陣圖”等戰術與張郃相持會戰,靠先進的連弩及陣法,殘其兵力,待自己攻下上邽等要地後,合兵迎擊張郃。
兵赴街亭,馬謖“違亮節度,舉動失宜”,致使街亭失守,造成了諸葛亮最有可能成功的第一次北伐以失敗告終,街亭之戰的失敗,教訓是深刻的。諸葛亮為北伐傾注了全部精力與心血,他對街亭戰略地位的認識明確,部署周密,但就是錯用了馬謖這個關鍵性人物。當然,從事實本身來看,失街亭也有多方麵的原因,但主要的原因是諸葛亮用人失當。對諸葛亮來說,一是諸葛亮忘記了劉備臨終所言“馬謖言過其實,不可大用”的囑托,被馬謖通曉戰術理論的才能所迷惑,過分的相信與倚重他的長處而忽視了他缺乏在實戰中靈活運用能力這一致命弱點,更沒想到馬謖會自負到不聽他的安排,違令行事。二是諸葛亮派王平、高詳、李盛等戰將是為了加強對街亭的防守,以防萬一。沒想到馬謖竟然不聽王平等人的多次勸告,終致失敗。三是張郃是曹魏五大名將之一,諸葛亮沒有認識到馬謖根本不是張郃的對手,因而沒有采納眾臣提出惟有魏延、吳壹可當此任的正確意見,執意派馬謖為先鋒,委之以駐守街亭的重任,結果招致了不可挽回的失敗。
對於北伐的首次失敗,諸葛亮痛定思痛。上疏曰:“臣以弱才,叨竊非據,親秉旄鉞以勵三軍,不能訓章明法,臨事而懼,至有街亭違命之朔,箕穀不戒之失,咎皆在臣授任無方。臣明不知人,恤事多暗,春秋責帥,臣職是當。請自貶三等,以督厥咎。”於是諸葛亮以右將軍,行丞相事。同時,諸葛亮又引咎責躬,布所失於境內,他不但承擔了失敗的責任,而且把自己的錯誤公開宣露,以便接受大家的監督,記取教訓。他在嚴責自己過失的同時,罰不避親,將馬謖“下獄物故”,揮淚斬謖。對忠實執行軍令的王平加封獎勵,進位寇將軍。在失敗麵前,對於功過是非,能夠分理清明,敢於主動承擔責任的精神是十分難能可貴的。