由于曹魏已经事先在陈仓做好了充足准备,加上陈仓地势险要,易守难攻,相方激战二十余日未有胜负。
曹真派费耀等率军来救,魏明帝也召张郃前往迎击诸葛亮。
此时汉军粮草不继,又闻讯魏援军快到,只好再退回汉中。
在退师途中,成功杀死前来追击的魏将王双。
三伐
229年春天,诸葛亮遣陈式(一说陈戒)进攻武都、阴平。曹魏大将郭淮领兵来救,诸葛亮率军驻扎建威,牵制郭淮。魏军知道汉军主力到临,便紧急撤退,汉军顺利占领二郡。
诸葛亮安抚了当地的氐人、羌人,然后留兵据守,自己率军回汉中。
因成功夺取二郡,刘禅再次恢复诸葛亮为丞相。
至冬天,诸葛亮徙府营至南山下的平原,建筑汉、乐二城,加强汉中防守。
防守
建兴八年(230年)七月,曹魏想转守为攻,大司马曹真上表伐蜀议案,但司空陈群认为斜谷太险阻,难以进退,于是曹真率主力军改为由子午道进发;大将军司马懿率军从汉水而上,欲与曹真军会师汉中;张郃从褒斜道进兵,直指汉中。
诸葛亮知道魏军来攻后,立即加强城固、赤阪等要地的防守,要求李严率二万人赶赴汉中阻击敌人,表李严子李丰为江州都督,防卫后方。
曹军的前锋夏侯霸先大军一步,进至兴势,在曲折的谷中下营。被蜀地百姓看到,指示汉军攻击,夏侯霸在鹿角间战斗,最后援军到达,夏侯霸才得以解围。
因蜀地艰险,期间遇上下了三十天的大雨,栈道断绝,曹真用了一个月,才走了一半路程。
在朝中,华歆、杨阜、王肃都上疏劝魏明帝下诏撤军,至九月,三路大军受诏撤退。
同年,诸葛亮派魏延、吴壹入南安,于阳溪大破魏将郭淮、费曜等。[7]
四伐
再战祁山
231年春天,诸葛亮乘曹魏雍凉地区半年没有下雨,再次进行北伐,以木牛运粮,包围祁山堡,并在祁山堡东北修建卤城作为蜀军大营。
诸葛亮又招揽鲜卑人轲比能,轲比能起兵到石城响应汉军。
曹魏因大将曹真病重,曹睿改派司马懿为统帅屯于长安,领张郃、费曜、戴陵、郭淮等人抵抗。司马懿先派费曜、戴陵与四千精兵前往上邽防守,自己则率其他兵力随后前进。
张郃则认为该分兵驻守雍、郿,但司马懿认为若分军不及合军有利,便向西推进。
诸葛亮知道后,留下王平继续领军攻打祁山堡,自己率主力北上上邽。到达上邽附近麦田后,没有等待收割一个月就成熟的麦粮,只对麦田进行了芟除破坏。
据汉晋春秋所载,郭淮戴凌为保护麦田,仅率四千人主动进攻诸葛亮主力部队,为亮所破,此说不为正史所载,仅四千人主动进攻又颇为费解,故此说存疑。
司马懿军也为保护麦田,日夜兼程急行军抵达上邽之东,司马懿深知汉军劳师远袭,粮食补给困难,兼之魏军经过通宵达旦的行军已为疲惫之师,因而凭险坚守,拒不出战,诸葛亮便回军卤城,未能彻底破坏上邽麦田,使得这批粮食成了乏粮魏军与之对峙的资本,但有必要指出的是,诸葛亮这一战略动作迫使魏军进入极度缺粮状态,导致司马懿、郭淮等不得不从关中运粮,甚至征取羌胡的粮谷。
这里也有必要指出,司马懿本人以用兵“侵掠如火”、“兵贵神速”著称,若是真的有较大把握能在野战中击败蜀军,以司马懿的军事指挥风格,司马懿应该是不会采用坚守策略的。事实上,初来乍到的司马懿也的确采取过进攻态势,但战果不佳。因此,司马懿其后采取防御态势,意味着在本次北伐作战中,蜀汉军队一直处与有利地位,而本场作战的魏军却居于相当不利的地位。
司马懿进军卤城,但却登山掘营,与汉军对峙,不与交战。
张郃认为蜀军长途来攻,“孤军食少”,必然想要速战速决。所以应该以大军屯于此处,然后分为奇兵,包抄蜀军,截断其后路。但司马懿不采纳。
魏军将领数次请战,司马懿都不准,诸将十分不满,便讥笑他:
“公畏蜀如虎,奈天下笑何!”
对峙一段时间后,诸葛亮撤出对祁山的包围,将全部军队集中在卤城,司马懿派张郃打通了和祁山堡的联络,并命他攻卤城以南的的王平,由案中道进逼汉军。自己则率众进攻卤城以北的诸葛亮主力,力图以钳形攻势,击败诸葛亮。
诸葛亮派大将魏延、高翔、吴班分三路领兵作战,大败魏军。斩获魏军的首级三千级,获得战利品玄铠五千、角弩三千一百张[8],卤城之战在《汉晋春秋》中有记载,同时,《汉晋春秋》关于卤城之战的记载,和《三国志王平传》的记载相互印证“九年,亮围祁山,平别守南围。魏大将军司马宣王攻亮,张郃攻平,平坚守不动,郃不能克”。
伏击木门道
六月,诸葛亮眼见粮草接应不上,而又收到后主刘禅下令北伐军撤退的圣旨,诸葛亮只有引军退回。
司马懿命令张郃追击汉军,张郃认为“围师必阙,归师勿遏”。眼见张郃不赞同追击未被打败而主动撤退的汉军,司马懿却强行坚持要张郃领兵追击,张郃无奈前往追击。最后于木门道,被埋伏于高处的汉军射中右膝,伤重病逝。