263年8月,魏军十八万人分三路南下:西路军由邓艾率领三万多人,从狄道向甘松、沓中直接进攻姜维;中路军由诸葛绪率领三万多人马,从祁山向武街、阴平之桥头切断姜维后路;而东路军由钟会率主力十余万人,再分三路分别从斜谷、骆谷、子午谷进军汉中。
刘禅闻讯后,忙命廖化增援姜维;派张翼和董厥到阳安关口防守钟会军。9月,魏军正式全面发动攻势,蜀国方面依照姜维的布防计划 ,命汉中的蜀军不得战斗,退至汉乐二城驻守。钟会派李辅进攻乐城的王含、荀恺进攻汉城的蒋斌,自己则带兵攻阳安关,派胡烈攻关城。 魏兴太守刘钦由子午谷出与魏军主力会师。关城守将、关中都督傅佥想坚守,但部将蒋舒因被降职而怀恨在心,遂建议傅佥出战。傅佥出战后,蒋舒投降魏军,傅佥奋战而死。此时除了柳隐坚守的黄金城与汉乐二城,汉中多数据点已被攻克。钟会又闻得魏军得重镇关城,获其库藏粮谷,于是留下两万兵力围住汉乐二城,领东路大军长驱直入,直逼剑阁。
钟会发告《移蜀将吏士民檄》劝蜀地军民投降。
西路军也同时展开攻势,邓艾命天水太守王颀、陇西太守牵弘、金城太守杨趋分别从东、西、北三面进攻沓中的姜维。而姜维因获悉魏军已进入汉中的消息,担心阳安关失守,剑阁孤危,便不作抵抗,且战且退,希望尽快赶到关城援助。但中路诸葛绪军已从祁山进达阴平之桥头,切断了姜维的退路。
姜维为引开魏军,便率军从孔函谷绕到诸葛绪后方,诈称攻击。诸葛绪怕自己的后路被切断,慌忙后退三十里,姜维趁机立即回头越过阴平桥头。当诸葛绪察觉自己上当时,已经与蜀军相差一天,追赶不及。姜维从桥头至阴平,一路向南撤,途中与正在北上的廖化、张翼、董厥等蜀汉援军会合。听闻关城丢失,蜀军惟有退守剑阁,抵抗魏军。
剑阁在今四川剑阁县,西有相连的小剑山和大剑山,地形险峻,道小谷深,易守难攻,姜维利用这种有利于防守的地形,在此列营守险,而刘禅也派人向东吴求救,吴国派出丁封、孙异等救蜀。
钟会大军被蜀军阻于剑门关外,不能前进。但剑阁又是通往成都的主要通道,不能放弃。于是钟会致书于姜维:“公侯以文武之德,怀迈世之略,功济巴、汉,声畅华夏,远近莫不归名。每惟畴昔,尝同大化,吴札、郑乔,能喻斯好。”劝原为魏人的姜维归降。姜维不予回答。钟会文笔虽佳,面对天险,还是得用武略攻之。然蜀军保险拒守,魏军攻关不克,又是孤军深入,运粮不便,于是钟会便商议退兵。