魏元帝景元四年春,司马昭发动了灭蜀之战。司马昭将魏军兵分三路,东路军为主力,由钟会指挥直取汉中。西路军由邓艾指挥,将姜维率领的蜀军牵制在沓中。中路军由诸葛绪指挥,遮断姜维归路并阻止蜀军增援沓中。在这三路人马中,有两路是专门用来对付姜维的,这使得姜维所部在战役一开始就处于困难的境地。
当时的姜维因为害怕黄皓的陷害,率领蜀国的野战军主力在沓中屯田。他事先对蜀国的防御战略做了调整,让开秦岭的防线,放魏军进入汉中盆地。蜀军则进行坚壁清野,坚守城池。他准备在魏军由于后勤供应困难,被迫撤军的时候对其发起攻击。这样就可以取得歼灭魏军大批有生力量的战果。
可是,由于姜维将蜀军主力带往沓中屯田,这就造成了汉中蜀军兵力的空虚。姜维在得知魏军准备大举进攻的消息后,向刘禅上书要求增加汉中的兵力。可是这个建议遭到了黄皓的阻挠,没有实施。这就造成了蜀军防御上极大的漏洞。
由于魏军在战役开始就用两路大军牵制住了姜维,使得钟会的大军很快就进入汉中盆地。在攻打汉、乐二城不下的情况下,钟会率军绕过蜀军防御的坚城,直取阳安关。阳安关的蜀军守将蒋舒投降,傅佥战死,钟会夺取了阳安关,夺取了南下的通道。
姜维在得知曹魏发动进攻的时候,已经为时已晚。他被邓艾的进攻缠住,一时难以脱身。在他付出巨大牺牲后,突围到阴平桥头的时候,又遭到诸葛绪的拦截。姜维采取佯攻的办法,故意做出攻打诸葛绪后方的动作。诸葛绪上当后将兵力撤回,使得姜维得以从阴平桥头通过,突出了包围。
姜维虽然采取机动战术突出了重围,但是由于在战役初期没能赶回汉中,再加上遭到邓艾的攻击,损失惨重,对战局产生了严重不利的影响。他闻知钟会攻下阳安关,立刻率领手下赶往剑阁布防。钟会的主力赶到后,由于姜维据险死守,没能够突破剑阁天险,战局一时间平稳下来。
但是,由于姜维的主力损失过大,他只能在剑阁阻挡钟会,却不能兼顾其他方向上的战局。邓艾发现了蜀军防御上新的漏洞,开始了偷渡阴平小道的行动。邓艾通过没有人烟的山区,一举攻下江油。此时的姜维远在剑阁,对此鞭长莫及。刘禅只得派出诸葛瞻率领的蜀军迎击邓艾。
诸葛瞻的部队主要是成都的留守部队,战斗力不强。诸葛瞻本人又缺乏作战经验,不听从部下的合理建议。最终在绵竹之战中,蜀军遭受惨败,诸葛瞻和他的部下大部战死沙场。在邓艾的威胁下,走投无路的刘禅只得投降,蜀汉灭亡。
姜维率领的蜀军放弃剑阁赶回成都救援,在半路上遇到了刘禅的使者,让他们向魏军投降。姜维和他的部下痛哭失声,有的人气愤得拔刀砍石,破口大骂,但是已经于事无补了。正是姜维错误的修改了汉中的防御方案,自己又在战役初期被魏军困在沓中,使得战局急转直下。虽然他突围成功,可是由于损失惨重,无力兼顾整个战局,只能眼睁睁看着邓艾灭亡了蜀汉。