自诸葛亮死后,蜀国和魏国好几年内不再打仗,双方各自退兵保守自己的疆土,人民的生活安定了相当长的一段时间。
魏明帝曹睿这时候贪图享乐,大造宫殿,花费了无数钱财,大臣们一个个连续上表劝告,希望他勤俭节约,可他不但不听,反而对劝告的大臣进行打击。在这些大臣中,只有司马懿一直不讲话,曹睿见司马懿从来不阻挡自己的行动,又有很大的功劳,便将他封为太尉,掌管国家的兵权。
公元239年,幽州刺史毋(wú)丘俭报告:“辽东太守公孙渊造反,自称燕王,多次向幽州进兵,幽州兵少,很难抵挡,请朝廷派兵援助。”
公孙渊的祖父名叫公孙度,父亲名叫公孙康,先后任辽东太守,当年曹操打败袁绍,袁绍的儿子袁尚、袁熙逃跑到幽州、辽东一带,被公孙康杀死,献给曹操,被封为广平侯。公孙康去世时,因公孙渊年纪太小,由他的叔叔公孙恭接任了辽东太守职位。公孙渊长大以后,夺回了辽东太守的职位。公孙渊当太守后,反复无常,一会儿投降吴国,一会儿投降魏国,后来干脆自封为燕王,公开和魏国相对抗。
曹睿接到毋丘俭的报告,立即请司马懿来商量怎么对付公孙渊。司马懿对曹睿说:“公孙渊造反,没什么大不了,我只要领四万兵马去,就可以消灭他。”
曹睿问:“依你看来,公孙渊大概会采取什么战术?”
司马懿说:“公孙渊听说我大兵来到,他最好的战术是赶快逃走,这是上计;如果不逃走,最好是拒守辽东,这是中计;如果他既不逃跑,又不坚持固守辽东,坐守襄平(今辽宁省辽阳市)老巢,这是最差劲的后手,肯定会被我生擒活捉。”
曹睿问:“公孙渊会采取上计吗?”司马懿说:“公孙渊一伙虽然凶狠狡猾,但不懂兵法,他肯定会退守襄平老巢。我计算了一下,大军出兵,去一百天,回一百天,作战一百天,休息六十天,一年时间,我就可以回来了。”公孙渊听说司马懿领兵来打自己,非常紧张,赶快派出使者,向东吴求救。吴主孙权早就想除掉公孙渊,便假意发兵到边界上驻扎,实际上是专等公孙渊兵败时好乘机进攻。
司马懿大军到达辽东后,第一仗便把公孙渊打得大败。公孙渊吃了败仗,退回军营中坚守不出,想用拖的办法来打败司马懿。
司马懿知道公孙渊的计划是想拖垮自己,便用了个声东击西的计策,一路军马悄悄地向襄平老巢进攻,另一路军马却大张旗鼓地向南撤走,看起来好像是粮草不足不得不退兵的样子。公孙渊的部将卑衍见此果然率领大军向南追赶,等到听说襄平被围困时,赶快掉头回保襄平,却又在半路上中了司马懿的埋伏,全军覆没。司马懿将全部军马发到襄平城下,公孙渊只得收缩军马,撤进城中,坚守不出,被司马懿逼上了绝路。
这时,正碰上秋雨连绵的季节,大雨下了一二十天,辽河水猛涨,魏兵军营四面涨水,魏兵被淹在泥水中,日子非常难过。许多将军来请求司马懿把军队移到远处高地上驻扎,司马懿坚决不许。为了让大家理解自己的作战意图,司马懿对部下说:“现在,我们粮多兵少,而公孙渊城中兵多粮少,再坚持一段时间,他的粮草运不进来,军心一乱,我们就可乘机进攻,彻底消灭他们了。”大家都佩服司马懿的分析。
又过了一段时间,天放晴了,天一晴,司马懿立即下令攻城。他们在四面筑起土山,士兵们登高攻城,城中守兵死伤极大,加上粮草已快用完,眼看就守不住了,公孙渊知道再打下去只有死路一条,无可奈何,只得派人出来请求投降。司马懿的本意就是要彻底消灭公孙渊,根本不准他投降,杀了使者,还将人头送还给公孙渊,要公孙渊把自己捆绑起来,到魏军中来投降。公孙渊没有办法,生怕自己一到魏营就会被司马懿杀死,便再派一个使者到司马懿军前说,愿意把儿子送来作抵押,自己马上率领全城官员来投降。司马懿又把使者怒骂了一顿,不答应公孙渊的条件。
公孙渊到这时已经山穷水尽了,半夜里偷开城门,向南逃跑,被司马懿早已埋伏好的军队堵住前路,背后大军又紧紧追赶,捕杀了公孙渊父子、家属、随行官员等一千多人。