魏文帝黄初元年十一月,曹丕登皇帝位,史称魏文帝。曹丕登基后,任命司马懿为尚书,不久转督军、御史中丞,封安国乡侯。黄初二年,免去督军官职,升任侍中、尚书右仆射。

    黄初五年,曹丕伐吴,临江观兵。司马懿奉命镇守许昌,并改封司马懿为向乡侯,转抚军、假节,领兵五千,加给事中、录尚书事。司马懿力辞不受,曹丕说:

    “朕夜以继日处理国家大事,没有须臾片刻的休息时间。如今册封你不是加以优荣,而是要你为我分忧。”

    黄初六年,曹丕再次大兴舟师伐吴,命司马懿留守许都,对内镇抚百姓,对外为大军提供军资。临行,曹丕下诏给司马懿说:

    “我深深地担心后勤和朝内之事,所以将这些大事委托给你。历史上曹参虽多有战功,但是萧何在后方的支持才更为重要。如今你留守后方,使我无西顾之忧,这可行吗!”之后曹丕由广陵回师京都,又下诏对司马懿说:

    “我向东用兵孙权,你该总理京都洛阳的事情;我在洛阳,你则应当总理东征孙权的战事。”于是又命司马懿留镇许昌。

    黄初七年五月,曹丕病重。临终时,令司马懿与中军大将军曹真、镇军大将军陈群、征东大将军曹休为辅政大臣。

    曹丕对太子曹叡说:“在这里的三位重臣,一定不要怀疑他们。”曹叡即位,改封司马懿为舞阳侯。孙权得知魏文帝去世后,于八月出兵攻魏。命诸葛瑾、张霸兵分两路进攻襄阳,亲自率军进攻江夏郡。

    司马懿击退了孙权,又击败诸葛瑾,并斩杀张霸,斩首千余级。十二月,司马懿升任骠骑将军。

    太和元年六月,魏明帝曹叡命司马懿驻扎宛城,加督荆、豫二州诸军事。蜀将孟达降魏时,魏待其甚厚,司马懿认为他言行倾巧,不可信任。但曹叡不听,任命孟达领新城太守。

    曹丕死后,孟达失宠,蜀丞相诸葛亮即暗中与之通信,图谋叛魏。诸葛亮恐他言行反复无常,想促他速叛,知魏兴太守申仪和他有矛盾,便派郭模到申仪处诈降,有意泄露其事。孟达闻此泄露,准备马上起兵。

    申仪将此事密告司马懿后,司马懿怕他突然发难,给他去信,详为慰解。孟达得信大喜,但是犹豫不决。

    司马懿则暗中率军进讨,诸将见孟达与吴蜀交接,劝司马懿先观而后动。司马懿说:“孟达没有信义,现在正是他犹豫不决之时,应当趁他没有决定而及时平定他。”司马懿亲自率军日夜兼程前去讨伐孟达,八天抵达新城城下。

    吴、蜀派出援兵解救孟达,被司马懿部拦阻于西城的安桥、木兰塞等地。

    此前,诸葛亮曾告诫孟达加紧防范,孟达写信给诸葛亮认为:“宛城和洛阳相距八百里,离我处一千二百里,上表给天子,来回路程,少需一个月,那时我的城池已修固,诸军都作好了准备。

    我驻扎的地形深险,司马懿必不会亲自来,其他部将来,则不足为患”。而司马懿先斩后奏,仅八日就兵临城下,孟达又写信给诸葛亮,惊叹:“我想要举事,而司马懿八日就兵临城下,何其神速也!”上庸城三面环水,孟达在城外树立木栅,加固城防。

    司马懿挥师渡水,毁其木栅,直逼城下。太和二年正月,司马懿兵分八路攻城,仅十六天,孟达的外甥邓贤、部将李辅开城投降。魏军入城,擒斩孟达,传首京师,俘获万余人。司马懿回军,仍驻宛城,奖劝农桑,禁止浪费。南方吏民心悦诚服。

    起初,申仪久在魏兴郡,专威弄权,擅自借皇帝名义刻制印信,私相授予。孟达被杀之后,申仪自生疑虑。当时各郡郡守见司马懿克敌制胜,纷纷奉礼祝贺。

    司马懿听之任之,并让人向申仪暗示。申仪只好前来祝贺。司马懿乘机将他收捕,送往京师。