馬謖失去街亭後,司馬懿率15萬魏軍直指諸葛亮所在的西城,當時諸葛亮身無戰將,只有2500名士兵,於是下令每個城門派20名士兵喬裝成百姓灑水掃街,而諸葛亮自己則在城牆上撫琴。率大軍而來的司馬懿見此狀,立刻退兵離開,這就是歷史上著名的「空城計」。
智近乎妖的司馬懿為何會上諸葛亮的空城計呢?
第一,諸葛亮一生謹慎,從未做出不可掌控冒險的事,儘管司馬懿也覺得疑點很大,但依然退走。
第二,司馬懿本身不願意諸葛亮此時有大的失敗,不想蜀國就這樣完了。曹丕臨終前給曹叡定的三個輔佐大臣,曹真與曹叡的關係最好,如果司馬懿戰場表現太好,曹真會嫉妒,如果戰敗了蜀國,曹叡就可能收回司馬家族的權利,這點是司馬懿不願意看到的。
第三,司馬懿抵禦諸葛亮的北伐方針是「拖」,不求大勝,也不求大敗,維持現狀,鞏固司馬家族在曹魏的實力,靜觀天下動向。
所以,就算司馬懿對諸葛亮的空城計有多少的疑慮,都必須要退走,如果是真空城計,進城會上當,如果是假空城計,諸葛亮又不能殺,所以司馬懿也必須得退走。