魏青龙二年(234年),蜀汉大规模的北伐战争结束后,魏、蜀两国内部的形势都发生急剧的变化。
蜀汉自诸葛亮死后,以蒋琬辅攻。蒋琬,零陵湘乡(今湖南湘乡县)人,是随刘备从荆州入蜀的大臣,是诸葛亮临终前指定的接班人。蒋琬以费祎为尚书令,作为副手。蒋琬和费祎执政后,采取对内休养生息、保国安民,对外通好孙吴的政策,基本上维持了蜀汉的安定局面,在军事方面没有进行大规模的北伐战争。蒋琬也曾有过改用水军乘汉水东进进攻曹魏的打算,因为朝议所阻,没有出军。蒋琬执政的后几年,身患重病,由费祎担任大将军,掌管军政,当时蜀汉直接统兵的是姜维,姜维字伯约,是天水冀县(今甘肃甘谷县)人,原为曹魏天水郡参军,诸葛亮第一次北伐时归附蜀汉。姜维很有军事才能,深得诸葛亮的器重,诸葛亮先封他为义将军,以后又迁为中监军、征西将军,诸葛亮死后又迁为卫将军。正始七年(246年),蒋琬死,由费祎继之执政,费祎继续蒋琬的保国安民的政策。姜维自以为才武过人,了解陇西民情风俗,总想举兵北伐,每每受到费祎的裁抑,并且限制他的兵力,常给其兵不过万人。
嘉平五年(253年),费祎在一次宴会上被魏国投降过来的郭循刺杀,军权落在姜维手中,于是姜维便开始对曹魏边境发动频繁的进攻。正元二年(255年),姜维率万人直趋狄道(今甘肃临洮),打败魏将陈泰,并包围魏将王经于狄道城。曹魏派邓艾与陈泰合力驰救狄道,打败姜维,姜维率军退驻钟提(今甘肃成县)。
次年正月,姜维进位大将军。七月,姜维又从祁山方面进军,因镇西将军胡济失期不至,在上邽段谷(今甘肃天水东南)又被邓艾打得大败,士卒星散,死亡很多,引起蜀汉人民的不满。蜀国当时载入户籍的有28万户,计男女94万口,而将士官吏就有14.2万,平均每两户就要负担一个官兵。同时汉主刘禅生性懦弱,自己又不理政事。甘露三年(258年),朝内大权逐渐被宦官黄皓把持,黄皓想以其亲信右大将军闫宇取代姜维,姜维危惧,便长期领兵居外,驻扎在沓中(今青海东南境)不敢回成都。