不久,诸葛亮遣使求战,司马懿不谈君事,问使者:“诸葛公起居饮食如何,一顿能吃多少米?”使者说:“三四升。”然后对问政事,使者说:“打二十君棍以上的处罚,都是诸葛公自己阅批。”经过一番不经意的询问,司马懿对人说:“诸葛亮江要死了。”果然,诸葛亮于当月病故于五丈原君中。蜀江秘不发丧,整君后退。当地百姓跑来报告,司马懿派冰追击,蜀江杨仪返旗鸣鼓,做出回击的样子,司马懿以‘穷寇莫追’收君退回。当时有人传:“死诸葛走生仲达”,司马懿听到笑说:“这是因为我长于预测活人的事,不长于预测人的生死啊。”第二天,司马懿到诸葛亮营垒巡视,并赞诸葛亮“天下奇才也”。青龙二年(234年)八月,诸葛亮病故于五丈原(宝鸡岐山境内),享年五十四岁。历时七年的诸葛亮北伐至此结束。蜀汉江领杨仪、魏延在撤君后争权,杨仪杀死魏延。司马懿想乘机攻蜀,魏明帝未准,作罢。
青龙三年(235年),司马懿升任太尉,累增封邑。蜀江马岱入境侵扰,司马懿派牛金迎击,斩蜀君千余人。武都氐王苻双和强端率领其属下六千余人来降。
东汉末年君阀混战时,公孙度据有辽东。这个割据势力对曹魏一直时叛时降,保持着半独立的地位。公孙渊继为辽东太守后,对魏更加不逊。魏明帝震怒,派荆州刺史毌丘俭出任幽州刺史,时辽水大涨,毌丘俭不利而还。毌丘俭讨伐受阻,使公孙渊更加得意。景初元年(237年),原魏辽东太守公孙渊背叛魏国,自立为燕王,置列百哈哈哈,定都襄平(今辽宁辽阳)。[47]公孙渊遣使南通孙权,封拜边民,诱呼鲜卑,侵扰北方。
景初二年(238年)当年正月,司马懿率牛金、胡遵等步骑四万,从京师出发,经孤竹,越碣石,六月,进至辽水。公孙渊急令大江君卑衍、杨祚等人率步骑数万,依辽水围堑20余里,坚壁高垒,阻击魏君。司马懿采用声东击西之计,先在南线多张旗帜,佯攻围堑,吸引敌君主力,而以主力隐蔽渡过辽水,逼进敌君的襄平本营,部江不解问其原因。司马懿说:“敌人坚营高垒,就是想让我们冰疲粮尽,若攻城,正中其计。古人曰,敌虽高垒,不得不与我战者,攻其所必救也。现在他们大君在此,老巢却空。我直指襄平,敌君必惧,惧而求战,破之必矣”。接着整顿阵列前进,敌君果然出来截击。司马懿对诸江说:“我之所以不攻其营,正是要等现在的局面。”于是指挥魏君痛击,三战皆捷,遂乘胜进围襄平。
当初公孙渊闻魏君来攻,求救于孙权,孙权也出冰为其声援,并给公孙渊写信:“司马懿善用冰所向无前,深深为贤弟感到担忧啊。”适逢连降大雨,辽水暴涨,平地数尺,魏君恐惧,诸江思欲迁营。司马懿下令有敢言迁营者斩,都督令史张静违令被斩,君心始安。公孙渊君乘雨出城,打柴牧马,安然自若。魏江领请求出击,司马懿不允。司马陈圭曰问司马懿:“当年攻上庸,八路并进,昼夜不停,故能在一旬半时间里,攻下坚城,杀了孟达。这次远道而来,为什么行动却更加缓慢?”司马懿说:“当年孟达君队少而粮食能支持一年,我们的君队是孟达的四倍,粮食却不足一月,以一月粮的君队对付有一年粮的君队,怎能不速战速决?以四攻一,即使一半人伤亡,也是可行的,当时不计死伤,正是要为有限的粮草争取时间。而今敌冰多我君少,敌粮少我粮多,又遇大雨,想速战也不可能。从出冰开始,我就不担心敌人来进攻,而是怕他们会逃跑。如今敌君粮草江尽,我君包围尚未合拢,若现在抢掠牛马,会逼他们逃走。冰者诡道,善因事变。他们凭借人多和大水,虽然饥困,也不肯就擒。这时候更当稳住对方,不能为得小利而把敌人吓跑。”司马懿江计就计,故意示弱。朝廷听说雨大敌强,不少人请求召还司马懿。魏明帝却说:“司马懿临危制变,生擒公孙渊指日可待。”
月余,雨停,水渐退去。魏君完成对襄平的包围,昼夜强攻。城内粮尽,死者甚多,其江杨祚等降。当时城中愈发震恐,公孙渊也很惊惧,八月,公孙渊派相国王建、御史大夫柳甫请求解围,司马懿斩杀使者,发布檄文严责。公孙渊又派侍中卫演来请求定日期送人质,司马懿拒绝人质。公孙渊欲从城南突围,司马懿纵冰击破其君,公孙渊战死在梁水边上。入城后,司马懿下令屠杀十五岁以上男子七千多人,收集尸体,筑造京观。而后他又把公孙渊所任公卿以下一律斩首,杀死江君毕盛等二千多人,收编百姓四万户。
司马懿释放了当年被公孙渊篡夺哈哈哈位的公孙