公元263年八月,司马昭召集十八万魏军分三路南下,当时邓艾率领三万大军出狄道直指沓中,以牵制在沓中种田的姜维,同时诸葛绪率领三万多人马自祁山向阴平之桥头以切断姜维的后路,阻止姜维逃离沓中;而钟会则率领十多万主力大军,兵分三路进军汉中。当时蜀汉按照姜维此前的布防计划,直接退至汉乐二城驻守,使得钟会率领的大军得以直接进入汉中,随后钟会派出手下,分别进攻乐城、汉城和关城,他自己则带兵攻阳安关。本来姜维在沓中时,已经用计甩开诸葛绪而成功从沓中撤离,之后,他本想进入汉中阻挡魏军主力,然而此时关城守将和关中都督都战死,部将蒋舒投降,关城被破,姜维只能与廖化等人汇合后,退至剑阁,与钟会大军再周旋。
钟会大军被蜀军抵挡在剑阁外而无法前行。由于剑阁是通往成都的主要通道,钟会没办法绕过剑阁进攻成都,因此,他不能直接放弃此处,但由于剑阁易守难攻,在蜀军的据守之下,魏军攻关不克,再加上钟会此番孤军深入巴蜀腹地,运粮不便,因此钟会商议打算退兵。就在此时,邓艾提出偷渡平阴的建议,他亲率军队从阴平小道出发,直接出现在蜀军面前,蜀江油守将马邈见魏军奇迹般出现,大惊失色,不战而降。在此之后,邓艾稍作休整,再率军队向成都进军,并于绵竹击败了诸葛瞻父子。刘禅得知绵竹失守,不知所措,当时谯周力主投降曹魏,群臣多有附和,十一月时,刘禅接受了谯周的意见,开城投降邓艾,魏军就此占领成都。在此之后,刘禅派使者让姜维投降,蜀汉正式灭亡。
事实上,在诸葛瞻战败于绵竹时,蜀汉并没有到山穷水尽的地步,毕竟此时姜维手中还有五万可战之兵,而姜维在得知诸葛瞻战败后,他就已经做出调整,派出军队支援成都,不仅如此,当时东吴的援军也在赶往蜀汉的路上,更何况在成都以北还有重镇雒城。要知道当年刘备在入川之战时气势如虹,却依旧在这里被阻击了长达一年之久,谋士庞统也是在这里被流失射中阵亡,可见刘禅只要稍微坚持一下,他甚至不需要在成都城下据守,就能坚持到援军到来而击败邓艾,但即便有如此大的生机,刘禅还是放弃了抵抗,而是出城投降,这究竟是为什么呢?