軍一擁而進把山四面都圍了起來。馬謖在山上看到魏兵漫山遍野旌旗招展隊伍嚴整感到非常驚恐。蜀兵看到這種情況也都喪失了勇氣不敢下山。馬謖揮動紅旗命令出擊但蜀軍將士互相推諉沒有一個人敢動。馬謖大怒之下殺了兩個將領以儆效尤但蜀軍仍然驚恐不安只得努力衝下山去攻擊魏兵然而魏兵卻巋然不動蜀兵又退回到山上去了。馬謖看到情況不妙只好命令軍隊緊守寨門等待外援的到來。
王平見到魏兵到來,引軍迎戰,正好遇到張合。兩人交戰數十回合後,王平因力量懸殊和孤立無援,只得撤退。魏兵從辰時一直圍困到戌時,由於山上無水,蜀軍無法進食,營寨中陷入混亂。到了半夜,山南的蜀兵開啟寨門投降魏軍,馬謖無法制止。司馬懿又命人沿山放火,山上的蜀兵更加混亂。馬謖知道守不住了,只得帶領殘兵從山西方向逃奔。司馬懿故意放開大路讓馬謖透過,然後派張合引兵追擊。
張合追了三十多里,突然前方鼓角齊鳴,一彪軍殺出。這彪軍放過馬謖,卻攔住了張合的去路。張合一看,原來是魏延。魏延揮刀縱馬直取張合,張合回軍便走。魏延驅兵趕來,想要奪回街亭。但是追到五十多里的時候,突然一聲吶喊,兩邊伏兵齊出。左邊是司馬懿,右邊是司馬昭,他們抄在魏延的背後,把魏延困在垓心。張合也回軍再來合圍,三路兵合在一處。魏延左衝右突無法脫身,折損了大半的兵馬。正在危急關頭,忽然一彪軍殺入重圍,原來是王平。魏延大喜過望說:“我得救了!”於是兩人合兵一處大殺一陣才逼退魏兵。
然而當他們慌忙奔回營寨時卻發現營中都是魏兵的旌旗原來申耽、申儀已經從營中殺出。王平和魏延只得直奔列柳城去投靠高翔。此時高翔已經得知街亭失守的訊息盡起列柳城的兵力前來救援。正好遇到王平和魏延兩人訴說前事。高翔建議說:“我們不如晚上去劫魏寨再奪回街亭。”於是三人在山坡下商議已定。
待到天色將晚時分他們兵分三路進行行動。魏延引兵先進直到街亭但卻不見一人心中大疑未敢輕進於是在路口埋伏等候。不久高翔的兵也到了兩人都說不知道魏兵在哪裡。正在此時忽然一聲炮響火光沖天鼓聲震地魏兵從四面八方湧出把魏延和高翔圍在垓心。兩人奮力衝突但無法脫身。
忽然聽得山坡後喊聲若雷一彪軍殺入重圍原來是王平引兵來救。他救了魏延和高翔兩人之後直奔列柳城而來。然而當他們奔到城下時卻發現城邊已經有一軍殺到旗上大寫“魏都督郭淮”字樣。原來郭淮與曹真商議後擔心司馬懿獨得全功於是分兵讓郭淮來取街亭。郭淮得知司馬懿和張合已經成功於是引兵直襲列柳城。正好遇到王平、魏延和高翔三人於是大殺一陣蜀兵傷亡慘重。
魏延擔心陽平關有失於是慌忙與王平和高翔一起撤向陽平關。郭淮收了軍馬後對左右說:“我雖然沒能得到街亭但卻取了列柳城也算是大功一件。”於是他引兵到城下叫門。只見城上一聲炮響旗幟皆豎當頭一面大旗上寫著“平西都督司馬懿”。司馬懿撐起懸空板倚定護心木欄干大笑說:“郭伯濟你來得怎麼這麼遲啊?”郭淮大驚說:“仲達你真是神機妙算我不如你啊!”於是入城與司馬懿相見。
見面之後司馬懿說:“現在街亭已經失守諸葛亮必定會逃走。你可以趕快和曹真一起星夜追擊他。”郭淮聽從了他的建議出城而去。司馬懿又喚來張合說:“子丹和伯濟擔心我獨得大功所以來取這座城池。我其實並不是只想成功而是僥倖得勝而已。我料想魏延、王平、馬謖、高翔等人必定會先去佔據陽平關。如果我們去取陽平關諸葛亮必定會趁機從後面掩殺過來那樣我們就中了他的計策了。《兵法》上說:‘歸師勿掩窮寇莫追。’你可以從小路抄到箕谷退兵我在斜谷這裡擋住蜀兵。如果他們敗逃了你不要追擊只要在中途截住他們就可以了。這樣蜀兵的輜重物資我們