公元263年,司马昭鉴于国内反对势力大多被扫平,政局已经稳定,加上刘禅昏庸,姜维多次北伐失败,蜀汉国力日渐衰微,因此决定发起对蜀汉的战争,以给自己增加政治资本。
司马昭对于此次伐蜀之战投入还是很大的,他命邓艾率军三万余进攻在甘松、沓中屯田的姜维。雍州刺史诸葛绪率军三万余进攻武街、桥头,断绝姜维退往汉中的退路。而钟会率魏军主力十余万由斜谷、骆谷直取汉中,魏兴太守刘钦也从上庸沿沔水而上攻打汉中,总兵力达到了十六万以上。
伐蜀之战初期进展顺利,姜维在得知钟会抵达长安以后,已经预感到了魏国可能出兵攻打蜀汉,因此上书刘禅,希望加强阳安关口、阴平桥头等处的防御。然而刘禅却听信鬼巫之言,没有及时做出反应。加上蒋舒又叛变,因此钟会得以轻取汉中,只有汉城、舒城、黄金围等地的蜀军还据城死守。
不过邓艾在沓中虽然击败了姜维,但是姜维还是用计杀退了诸葛绪,经桥头退往剑阁,和刘禅派来增援的右车骑廖化、左车骑张翼、辅国大将军董厥等人汇合,一起坚守剑阁。因为剑阁地形险要,易守难攻,钟会虽有兵力优势,却多次进攻失败,双方陷入了僵持。
邓艾见剑阁难以攻克,于是决定冒险走阴平小路经汉德、阳亭直取涪城,以迫使姜维回援,如果姜维不来,就直接攻打成都。随即邓艾亲自率军在阴平小路上开路搭桥前行,经七百多里抵达江油。江油守将马邈没有想到魏军会从阴平小路而来,没有做准备,面对魏军突然杀来只能投降。
刘禅得知魏军已经过了阴平小路迫近涪城,命诸葛亮之子卫将军诸葛瞻率军去涪城地方魏军。诸葛瞻抵达涪城后,黄崇曾经劝他要占据险要,防止魏军突入平原。但是诸葛瞻并没有听从,而是和魏军在涪城交战,结果兵败退守绵竹。在绵竹诸葛瞻再次和魏军决战,兵败被杀。邓艾得以直取成都,刘禅开城投降。
很多人认为诸葛瞻举措失当,才招致蜀军之败。诸葛瞻能力上确实可能不如邓艾,不过仔细分析双方态势、兵力对比,就可以发现诸葛瞻之败难以避免。
从时间上来说,诸葛瞻难以阻止魏军进入平原,失去了地利
既然江油守将马邈没有想到魏军会走阴平小路而来疏于防范,那么诸葛瞻受命去迎击魏军肯定是在邓艾夺取江油之后,否则江油守军不至于没有准备。而按照邓艾所述,涪城距离成都有三百多里。从刘禅得知魏军已经通过了阴平小道攻取了江油,然后让诸葛瞻调集部队赶到涪城,期间已经过去了不少时间。
从江油出发到平原不过百余里,邓艾又是名将,自然深知不能被蜀军堵在山区内,肯定不会在江油滞留太久,而是急行军进入平原。按照路程算,即使考虑魏军所走的是山道,行军速度要慢于蜀军,在蜀军抵达涪城时也已经或者即将进入平原。如果诸葛瞻离开涪城率大军继续前进,那么极可能来不及堵住魏军,而是在半路和敌军相遇,双方发生野战。
按照之后蜀军在涪城和绵竹两战以逸待劳尚且败给魏军看,蜀军在行军中仓促遭遇魏军野战的结果更不容乐观。在这种情况下,诸葛瞻采取稳妥的方案据守涪城并没有什么太大的问题。
而蜀军败给魏军,主要原因是诸葛瞻兵力很可能少于魏军
在《三国志》中并没有记载邓艾带了多少部队偷渡阴平,只写了他从军中挑选精锐出发,因此他的兵力肯定比原来统属的三万多人要少。而根据《晋书·文帝纪》记载,邓艾所部大约有万余人。不过这不是邓艾出江油以后的所有兵力。
和《三国演义》中钟会嘲笑邓艾偷渡阴平的想法不同,历史上钟会敏锐地意识到了从阴平直取成都的意义,于是派遣将军田章等率军从剑阁西面绕路抵达江油,和邓艾汇合。邓艾命田章作为先锋,一起向涪城发起进攻。