却说众将听说孔明不追赶魏兵,都进帐禀告说:“魏兵因大雨无法安营扎寨,所以撤退了,正好趁机追击。丞相为什么不追呢?”孔明说:“司马懿很会用兵,现在撤军肯定有埋伏。我如果追击,正中他的计策。不如放他远去,我却分兵直接从斜谷出发夺取祁山,让魏军防不胜防。”众将问:“长安也有其他道路可攻,丞相只攻祁山,是什么原因呢?”孔明说:“祁山是长安的门户,陇西的各个郡县,如果有兵来,必定要经过这里;而且这里前临渭水,后靠斜谷,左出右进,可以埋伏军队,是个用兵的好地方。所以我先夺取此地,以占据地利。”众将都拜服。孔明命令魏延、张嶷、杜琼、陈式从箕谷出发;马岱、王平、张翼、马忠从斜谷出发:都到祁山会合。安排完毕后,孔明亲自率领大军,让关兴、廖化作为先锋,随后进发。
却说曹真、司马懿二人,在后方监督人马,派一支军队进入陈仓古道探查,回报说蜀兵没来。又过了十天,后面埋伏的众将都回来,说蜀兵全无消息。曹真说:“连绵秋雨,栈道断了,蜀人怎么知道我们撤军呢?”司马懿说:“蜀兵随后就出兵了。”曹真问:“怎么知道呢?”司马懿说:“连日晴朗,蜀兵不追,是以为我们有伏兵,所以放我们远去;等我们全军撤过,他们就去夺取祁山了。”曹真不信。司马懿说:“子丹怎么不相信呢?我料定孔明会从两谷来。我和子丹各守一个谷口,以十天为期。如果没有蜀兵来,我就面涂红粉,穿女人衣服,到营中认罪。”曹真说:“如果有蜀兵来,我愿把天子赐的玉带一条、御马一匹给你。”于是分兵两路:曹真领兵驻扎在祁山西斜谷口;司马懿领兵驻扎在祁山东箕谷口。各自下寨完毕后,司马懿先带一支军队埋伏在山谷中;其余军马都在要道安营。司马懿换了装,混在全军中,巡视各营。忽然到一营,有个偏将仰天抱怨说:“大雨淋了这么久,不肯回去;现在又在这里停住,硬要赌赛,难道不苦了官军吗!”司马懿听说后,回营升帐,把众将都叫到帐下,查出那个将军。
司马懿喝道:“朝廷养兵千日,用在一时。你敢发怨言,动摇军心!”那人不认罪。司马懿叫出同伴的人作证,那将无法抵赖。司马懿说:“我不是赌赛,是想打败蜀兵,让你们立功回朝,你却敢发怨言,自取罪过!”喝令武士推出斩首。一会儿,就献上头颅。众将都很害怕。司马懿说:“你们都要尽心防备蜀兵。听到我中军炮响,四面一起进攻。”众将受令退下。
却说魏延、张嶷、陈式、杜琼四将,带二万兵,从箕谷出发。正行进间,忽报参谋邓芝来到。四将问他原因,邓芝说:“丞相有令:如果从箕谷出发,要提防魏兵埋伏,不可轻率前进。”陈式说:“丞相用兵怎么这么多疑呢?我料定魏兵连遭大雨,衣甲都坏了,肯定急于回去;怎么能又有埋伏呢?现在我们加倍行军,可以大获全胜,怎么又叫不要进了呢?”邓芝说:“丞相的计策没有不成功的,谋略没有不奏效的,你怎么敢违令呢?”陈式笑着说:“如果丞相真那么多谋,就不会有街亭的失误了!”魏延想起孔明以前不听他的计策,也笑着说:“如果丞相听我的话,直接出子午谷,现在别说长安,连洛阳都能拿下!现在却执意要出祁山,有什么好处呢?既然下令进兵,现在又叫不要进,号令怎么这么不明白!”陈式说:“我自己有五千兵,直接出箕谷,先到祁山下寨,看丞相羞不羞!”邓芝再三劝阻,陈式就是不听,自己带五千兵出箕谷去了。邓芝只好飞报给孔明。
却说陈式带兵没走几里,忽然听到一声炮响,四面伏兵都出来了。陈式急忙后退时,魏兵堵住谷口,围得像铁桶一样。陈式无论向左冲去还是向右突围,无法脱身。忽然听到喊声大震,一队军马杀来,原来是魏延救了陈式,回到谷中,五千兵只剩四五百带伤的人马。后面的魏兵追来,多亏杜琼、张嶷带兵接应,魏兵才退。陈式、魏延二人才相信孔明的先见之明,后悔不已。
且说邓芝回见孔明,说魏延、陈式如此无礼。孔明笑着说:“魏延一向有反叛的迹象,我知道他常有不满;因为爱惜他的勇猛才用他。以后必成祸患。”正说着,忽有流星马报到,说陈式损失了四千多人,只剩下四五百带伤的人马,在谷中驻扎。孔明让邓芝再去箕谷安抚陈式,防他生变;一面叫马岱、王平吩咐说:“如果斜谷有魏兵把守,你们二人带本部军翻山越岭,晚上行军,白天隐蔽,快速出到祁山左边,举火为号。”又叫马忠、张翼吩咐说:“你们也从小路走,白天隐蔽,晚上行军,径直出到祁山右边,举火为号,和马岱、王平会合,一起袭击曹真营寨。我亲自从谷中三面攻击,魏兵就可以打败了。”四人领命分头带兵去了。孔明又叫关兴、廖化吩咐了一番。二人受密计后,带兵而去。孔明自己带精兵加速行进。途中又叫吴班、吴懿授与密计,也带兵先走了。
却说曹真心中不相信蜀兵会来,因此松懈,让军士休息;只等十天无事,好羞辱司马懿,不觉已经守了七天,忽然有人报谷中有小股蜀兵出现。曹真派副将秦良带五千兵去侦察,不许让蜀兵靠近边境。秦良领命,带兵刚到谷口,看到蜀兵撤退。秦良急忙带兵追赶,追了五六十里,不见蜀兵,心中疑惑,让军士下马休息。忽然哨马报告说:“前面有蜀兵埋伏。”秦良上马查看,只见山中尘土大起,急忙让军士提防。不一会儿,四周喊声大震:前面吴班、吴懿带兵杀出,后面关兴、廖化带兵杀来。左右都是山,没有退路。山上蜀兵大叫:“下马投降的免死!”魏兵大半投降。秦良拼死抵抗,被廖化一刀斩于马下。孔明把降兵关在后军,却把魏兵的衣甲给蜀兵五千人穿上,扮作魏兵,让关兴、廖化、吴班、吴懿四将带领,直奔曹真营寨;先让报马入寨说:“只有一些小股蜀兵,都赶跑了。”曹真大喜。忽报司马都督派心腹人来。曹真叫他进来询问。那人说:“现在都督用埋伏计杀了蜀兵四千多人。司马都督问候将军,叫不要把赌赛放在心上,要用心防备。”曹真说:“我这里一个蜀兵都没有。”于是打发来人回去。忽又报秦良带兵回来了。曹真亲自出帐迎接。等到寨前,有人报前后两处起火。曹真急忙回寨后查看,关兴、廖化、吴班、吴懿四将指挥蜀军,冲进营来;马岱、王平从后面杀来;马忠、张翼也引兵杀到。魏军措手不及,各自逃命。众将保护曹真往东逃跑,后面蜀兵赶来。
曹真正奔走时,忽然喊声大震,一队军马杀到。曹真胆战心惊,一看,原来是司马懿。司马懿和蜀兵大战一场,蜀兵才退。曹真得以脱身,羞愧无比。司马懿说:“诸葛亮占据了祁山的地利,我们不能久留此处;应该去渭水边扎营,再作打算。”曹真说:“仲达怎么知道我吃了大败呢?”司马懿说:“见来人报告说子丹说没有一个蜀兵,我料定孔明会暗中劫寨,所以知道,特来接应。现在果然中计。不要再提赌赛的事了,只同心报国吧。”曹真很惶恐,气成疾病,卧床不起。军队驻扎在渭水边,司马懿怕军心混乱,不敢让曹真带兵。
却说孔明大举兵马,再次出祁山。犒劳军队完毕后,魏延、陈式、杜琼、张嶷进帐拜伏请罪。孔明问:“是谁导致军队失败的?”魏延说:“陈式不听号令,擅自进入谷口,因此大败。”陈式说:“是魏延叫我这么干的。”孔明说:“他反而救了你,你却诬陷他!已经违反了军令,不要巧言令色!”就喝令武士推出陈式斩首。一会儿,就把头悬挂在帐前,以儆效尤。这时孔明不杀魏延,是想留着他以后用。孔明斩了陈式后,正商议进兵,忽然有细作报告说曹真病重,现在营中治疗。孔明大喜,对众将说:“如果曹真病轻,一定会回长安。现在魏兵不退,肯定是病重,留在军中安定众人的心。我写一封信,让秦良的降兵送去给曹真,曹真一看,必然气死!”于是叫降兵到帐下,问:“你们都是魏军,父母妻子大多在中原,不宜长期留在蜀地。现在放你们回家,怎么样?”众军哭着拜谢。孔明说:“曹子丹和我有约定;我有一封信,你们带回,送给子丹,必有重赏。”魏军拿了信,奔回本寨,把孔明的信送给曹真。曹真扶病起来,拆开信看。