安定失陷後,曹昂所部十五萬兵馬駐守孤城長安,面臨諸葛亮、姜維、關羽三路大軍圍困,形勢已經十分危急.曹昂派人急赴許昌報告軍情,命令夏侯淵、司馬懿等人統領城中諸將,安排防守事宜。
諸葛亮向來以攻心為主,得降兵最多,因為所部兵多將少,金旋派張苞前往,歸諸葛亮所部。又使諸葛亮節制關羽、姜維兩路大軍,統一西北三路的行動,準備攻擊長安。
諸葛亮得令後,命令馬、朱恆率領五萬兵馬駐防安定。率領周泰、張苞、韓當、文聘、蘇飛五將共十六萬兵馬兵出安定;命令姜維部將李嚴率領三萬士兵駐守漢中,張嶷率領兩萬士兵駐守散關,姜維率領所部余將共九萬精兵出漢中,兩軍約期進,進攻長安。命令關羽所部兵馬嚴防洛陽援軍。
曹操聞訊大急,召集眾謀士商議,其子曹植道:「長安兵力雖然多達十五萬之眾,但是城中糧草只能維持數月,諸葛亮、姜維兩路大軍倍於長安守軍,長安孤城難守,不若讓大哥統領部下棄城,赴洛陽駐守。如此洛陽兵力勢眾,我等聚集重兵東上,消滅河北袁氏,除去後顧之憂,而後集結大軍與金旋相戰。」
曹操覺得長安為天下堅城,若是不戰而棄未免有些可惜,但是長安與所轄各郡道路只餘東下一路,又被關羽所部重兵封閉。無奈之下,派人趕赴長安,命令曹昂所部棄守長安,退到洛陽。又因長安與洛陽之間通道被關羽所部封住,派遣許昌六萬兵馬趕赴洛陽,命令鄧艾率領大軍十五萬攻打弘農,接應長安曹昂所部東撤。
諸葛亮所部與姜維所部此時已經到達長安城下,派遣兵馬將長安圍得水洩不通。曹昂整兵出戰幾次,均以小敗告終,因此暫時守起出戰之心,命令諸將堅守不戰。
曹操命令到達長安,曹昂召集眾人商議。曹昂道:「父王派遣使者前來,下命棄守長安,東撤至洛陽駐紮。鄧艾所部洛陽軍已經行軍,欲要攻打弘農以為接應。然而諸葛亮大軍圍城,我等要兵不血刃撤離此地,也是難事一樁。如何平安撤離,請諸位一起協商。」
司馬懿道:「鄧艾所部非關羽精兵對手,必然不敢攻城,只是屯於弘農城外接應我軍。若是徑走弘農,諸葛亮必然派遣重兵追擊,倘若關羽所部於半途設伏,長安大軍危矣。莫若派李典、呂虜兩將率領兵馬四萬往西出擊,引誘諸葛亮所部分兵往追,漢中守兵薄弱,諸葛亮為人謹慎,必然不敢大意。而後合郡之兵盡棄輜重,輕軍急赴弘農。我與妙才公統兵為先鋒,提防關羽伏兵。夏侯霸、朱雋率領所部斷後,長安大軍可以平安與鄧艾軍會合。」李典、呂虜兩將聞言面有慍色,但是眾將都隨之附和,兩將欲言又止。
諸葛亮聽聞李典、呂虜兩將率領所部兵馬西去,派人命令漢中守將張嶷小心防守,若是曹軍往攻,固守不戰;又遣人通知關羽出兵截擊長安兵馬。又思長安城如此違反常規,必有棄城東逃之意。
此時關羽所部派人送來軍報,說鄧艾所部攻打弘農,諸葛亮略一盤算,已經猜中曹軍意圖,於是升帳點將,分派各路兵馬。命令魏延、張苞、周泰三將率領九萬士兵西行二十里,使長安守軍認為諸葛亮所部分軍,然後繞路東行,在到弘農必經要路兩側埋伏,放過先頭部隊,伏擊其中軍;命令姜維、譚雄、王平三將率領九萬士兵,長安守兵棄城後,尾隨其後追擊曹軍;其餘兵將七萬準備接管長安。
眾將接到軍令,皆困惑不解,問諸葛亮道:「長安城防堅固,城中守軍兵眾,必然不會輕易棄守城池,何況李典大軍攻取漢中,漢中守兵薄弱,為何不派兵相助?」
孔明笑道:「長安孤城,若是被圍日久,城中糧草不繼,必為我軍攻克。曹操手下謀士甚多,必有勸曹操棄守長安者,保留兵力屯紮洛陽,而後從長計議。司馬懿多謀,擔心我軍重兵追擊,因此讓李典所部佯攻漢中,使我大軍分兵往救,以分我軍兵勢。如此反有『此地無銀三百兩』之嫌,我料彼軍不出三日,必會棄城東逃。」眾人聞言,如恍然大悟,各自引兵前去。
曹昂聞知魏延等將率領部下西行,以為司馬懿分兵之計奏效。又過兩日,眾將收拾完畢,曹操命令夏侯淵、司馬懿兩將率領三萬精兵為前軍,夏侯霸、朱雋兩將率領三萬兵馬斷後,打開東門急撤往弘農。
諸葛亮所部東門之軍,兵力不多,略加阻擊,旋即退兵。姜維等將奉命後,率領部下紮營附近,聞知曹軍出城,緊隨曹軍身後追殺。諸葛亮引領兵馬進入長安,接管長安軍政諸事。
魏延等將西行折回,到達埋伏地點,已有兩日,廣派細作,打探長安消息。細作聞長安守軍棄城往東行進,急忙回報魏延等將。魏延等將率領部下埋伏完畢,正好夏侯淵、司馬懿前軍到達,魏延等將依計放過前軍,靜候中軍前來。
曹昂中軍來到埋伏之處,因為前軍安然過去,都未加防備。魏延等將率領部下突起,弓箭擂木齊,曹軍死傷無數。曹昂等大驚失色,整兵與伏兵混戰。
姜維所部此時殺敗夏侯霸、朱雋所部斷後部隊,大軍急追過來,曹軍受前後夾攻,未有幾時,軍陣已亂,士兵潰散。王雙等將拚死護住曹昂,殺出重圍往東逃去,朱雋、司馬孚、韓遂等皆死於亂軍之中。
曹昂敗軍退到半途,又為張飛所部伏兵殺敗,士兵損傷眾多,所幸鄧艾聞訊率領重兵前來接應,救得諸將性命。又過幾日,李典、呂虜也率領殘軍敗回。
原來,李典、呂虜率領所部出長安後,西行百里,前無阻攔,後無追兵,兩將大惑不解。李典駐馬與呂虜商議,兩將議定,就地安營紮寨,命人打探長安消息。聽聞曹昂大軍出城,兩將率領部下繞路急奔往弘農,中途為諸葛亮伏兵擊敗,損折士兵逾半,兩將死戰得脫。
曹操西路軍十五萬兵馬,被諸葛亮連續伏擊,連戰連敗,損兵折將,士卒投降者達五萬餘眾,逃到弘農鄧艾軍營的士兵,只有八萬。鄧艾因為此次任務就是接應長安諸將,如今目的已經達到,不敢在此久駐,率領部隊返回洛陽。