望。今徙其善者,既伤其意,将令去者不敢复还。”曹操听了他的建议,没有移民,使之前藏窜逃亡者果然都复出归化,郡县皆平。
延康元年(公元220年),曹操去世,朝野危惧,司马懿管理丧葬诸事,内外肃然。同年,曹丕即魏王位,司马懿受封河津亭侯,转丞相长史。当时孙权正率军向西。朝臣们认为樊城、襄阳缺乏粮,不能抵御吴军,请召守将曹仁回驻宛城。司马懿则表示:“孙权刚刚打败关羽,正是他想和魏国结好的时候,一定不敢为患。襄阳是水陆交通要地,不能放弃。”曹丕没听其建议,命曹仁放火烧毁二城。后来孙权果然没来入侵,曹丕悔之不及。
黄初元年(公元220年)十一月,曹丕登皇帝位,史称魏文帝。登基后,任命司马懿为尚书,不久转督军、御史中丞,封安国乡侯。
黄初二年(公元221年),免去督军官职,升任侍中、尚书右仆射。黄初五年(公元224年),曹丕伐吴,司马懿镇守许昌,并改封司马懿为向乡侯,转抚军、假节,领兵五千,加给事中、录尚书事。
黄初六年(公元225年),曹丕再次伐吴,司马懿留守许昌,“内镇百姓,外供军资”。临行,曹丕下诏书给司马懿说:“吾深以后事为念,故以委卿。曹参虽有战功,而萧何为重。使吾无西顾之忧,不亦可乎!”后曹丕由广陵回师洛阳,又下诏对司马懿说:“吾东,抚军当总西事;吾西,抚军当总东事。”于是司马懿留镇许昌。
黄初七年(公元226年)五月,曹丕驾崩,享年四十岁。临终时,令司马懿与中军大将军曹真、镇军大将军陈群、征东大将军曹休为辅政大臣。曹丕对太子曹叡说:“有间此三公者,慎勿疑之。”曹叡即位,改封司马懿为舞阳侯。孙权得知魏文帝去世后,于八月出兵攻魏。命诸葛瑾、张霸兵分两路进攻襄阳,亲自率军进攻江夏郡。司马懿击退了孙权,又击败诸葛瑾,并斩杀张霸,斩首千余级。十二月,升任骠骑将军。
太和元年(公元227年)六月,魏明帝曹睿命司马懿驻扎宛城,加督荆、豫二州诸军事。时有蜀将孟达降魏,魏朝待其甚厚,司马懿认为他言行倾巧,不可信任。但曹睿不听,任命孟达领新城太守,封侯,假节。后孟达失宠,蜀丞相诸葛亮即暗中与之通信,图谋叛魏。诸葛亮恐他言行反复无常,想促他速叛,知魏兴太守申仪和他有矛盾,便派郭模到申仪处诈降,有意泄露其事。孟达闻此泄露,准备马上起兵。申仪将此事密告司马懿后,司马懿怕他突然发难,给他去信,详为慰解,信中说