卻說姜維在成都,接到諸葛恪書信,便奏准後主,請求出兵。姜維令廖化、張翼爲左右先鋒,夏侯霸爲參謀,張嶷爲運糧使,領二十萬大軍出陽平關。姜維又用重禮聯絡羌人,羌王迷當起兵五萬,前來相助。
司馬師得報,便命司馬昭統兵,徐質爲先鋒,前來迎敵。兵至隴西,兩軍前鋒相遇。徐質使開山大斧,蜀陣中廖化出馬,戰不數回合,廖化不敵徐質,拖刀敗回。張翼縱馬挺槍來戰,不到十幾回合又敗下陣。徐質驅兵掩殺,蜀兵大敗,退了三十里。姜維與夏侯霸商議,夏侯霸提議來日詐敗埋伏勝之。姜維道:「司馬昭是仲達之子,豈能不懂兵法?若見地勢險惡必不肯追。我見魏兵屢次斷我糧道,如今用此計誘敵,可斬徐質。」於是姜維一面堅守不出,命兵士用木牛流馬在鐵籠山後運糧。司馬昭得報,就派徐質領兵來斷蜀兵糧道。徐質引兵往鐵籠山,蜀兵見了皆盡逃散。徐質分兵一半押送糧草,一半兵馬來追蜀兵。趕不到十里,忽見兩邊火起,一聲炮響,廖化、張翼兩路軍馬殺到,魏兵大敗。徐質拼死隻身突圍,人困馬乏,前面姜維引軍殺出,徐質大驚,被姜維一槍刺於馬下。
於是,夏侯霸領了一隊蜀軍,換上魏軍衣甲,打著魏軍旗號,直奔魏寨。魏軍開門放入,蜀兵便在寨中殺起。司馬昭大驚,慌忙上馬,正要走時,廖化殺到。司馬昭見前後無路,只得引兵上鐵籠山據守。山上只有一條路,其餘四處都極險峻;山上只有一眼泉水可以飲用。姜維將山團團圍住,定要擒拿司馬昭。
郭淮見司馬昭被困,想要來救,卻怕被羌人襲了後路。於是與陳泰商議,用詐降計殺敗羌兵,捉了迷當。迷當引羌兵爲前部,魏兵在後,來救司馬昭。姜維見羌人來,出寨相迎。魏將乘機從後殺出,姜維大驚,慌忙上馬。蜀兵也四散逃生。郭淮引兵追來。姜維手無刀槍,只有一張硬弓,箭壺內的箭都在慌忙中散落。姜維見郭淮追近,虛拽弓弦,連響十餘次。郭淮連躲幾番,見無箭到,知道姜維沒箭,便掛住鋼槍,張弓搭箭就射。姜維急忙閃過,順手接了那箭。等郭淮追近,張弓射去,郭淮應聲落馬。姜維回馬想殺郭淮,魏兵追來,姜維只搶得鋼槍逃回。魏兵救了郭淮歸案,拔出箭頭,郭淮血流不止而死。
司馬昭回了洛陽,與司馬師專制朝政。曹芳不滿司馬兄弟專權,想聯合夏侯玄除掉二人。不料事情敗露,司馬師便廢去曹芳,立曹丕之孫曹髦爲帝。不久司馬師病死,司馬昭一人專政。
姜維得知司馬師已死,又興師伐魏。蜀軍在洮水一戰,大破魏兵。姜維乘勝進軍狄道城。不料久攻不下,魏將鄧艾、陳泰率兵來援。姜維不能取勝,只得退兵。
不久,姜維又出兵祁山,司馬昭命鄧艾迎戰。鄧艾連下九個大寨,互相接應。姜維屢屢搦戰,鄧艾只用弓箭相射,並不出兵。等蜀兵安營,鄧艾又驅兵前來騷擾。姜維安不住營寨,只得引兵轉攻上邽。誰知鄧艾早已設有伏兵,蜀兵大敗。
蜀漢景耀元年,淮南諸葛誕與東吳聯合,起兵討伐司馬昭。姜維見魏軍在長城囤糧,便先取了長城,燒了糧草。鄧艾引兵來救,戰了一場,紮下營寨,卻不與姜維決戰。姜維屢次搦戰,鄧艾只是找藉口拖延。如此多日,忽然探馬來報,司馬昭勝了東吳,正領兵來救。姜維無奈,只得班師。
此時孫亮已死,孫休在位。孫休料想司馬昭不久即將篡位,定會出兵蜀、吳,便修國書,讓後主防備。
姜維便又起兵,直出祁山,在谷口下寨。誰料鄧艾算定蜀軍安營之地,早已在營下挖了地道。夜裡,魏兵從地道鑽出,裡應外合,蜀軍大亂。姜維急命士兵不可妄動,只用弓弩相射;魏兵沖了十餘次,都被射回。鄧艾只得收兵回寨。
次日,兩軍列陣祁山之前。姜維布下八卦陣,鄧艾也布下八封陣。姜維邀鄧艾斗陣法,鄧艾欣然答應。兩軍衝突,陣法不亂。只見姜維將旗一招,忽然變成「長蛇捲地陣」,鄧艾頓時被困。幸好司馬望識得陣法,引兵殺入,救了鄧艾。鄧艾與司馬望回寨商議,一面與姜維斗陣法,一面派兵偷襲蜀兵後路。不想被姜維識破。於是姜維一面與司馬望斗陣法,一面派兵暗襲魏軍。魏軍不曾防備,頓時大敗。鄧艾只得退到渭南寨堅守。
此時後主寵信宦官黃皓,致使蜀中朝政昏暗。鄧艾便讓人到成都收買黃皓,散布謠言,說姜維將要投魏。後主急召姜維回朝,姜維不知何事,只得回師。