懿辭朝出城,令胡遵為先鋒,引前部兵先到遼東下寨。哨馬飛報公孫淵。淵令卑衍,楊祚分八萬兵屯於遼隧,圍塹二十餘里,環繞鹿角,甚是嚴密。胡遵令人報知司馬懿。懿笑曰:“賊不與我戰,欲老我兵耳。我料賊眾大半在此,其巢穴空虛,不若棄卻此處,徑奔襄平;賊必往救,卻於中途擊之,必獲全功。”於是勒兵從小路向襄平進發。
卻說卑衍與楊祚商議曰:“若魏兵來攻,休與交戰。彼千里而來,糧草不繼,難以持久,糧盡必退;待他退時,然後出奇兵擊之,司馬懿可擒也。昔司馬懿與蜀兵相拒,堅守渭南,孔明竟卒于軍中:今日正與此理相同。”二人正商議間,忽報:“魏兵往南去了。”卑衍大驚曰:“彼知吾襄平軍少,去襲老營也。若襄平有失,我等守此處無益矣。”遂拔寨隨後而起。早有探馬飛報司馬懿。懿笑曰:“中吾計矣!”乃令夏侯霸、夏侯威,各引一軍伏於遼水之濱:“如遼兵到,兩下齊出。”二人受計而往。早望見卑衍、楊祚引兵前來。一聲炮響,兩邊鼓譟搖旗:左有夏侯霸、右有夏侯威,一齊殺出。卑、楊二人,無心戀戰,奪路而走;奔至首山,正逢公孫淵兵到,合兵一處,回馬再與魏兵交戰。卑衍出馬罵曰:“賊將休使詭計!汝敢出戰否?”夏侯霸縱馬揮刀來迎。戰不數合,被夏侯霸一刀斬卑衍於馬下,遼兵大亂。霸驅兵掩殺,公孫淵引敗兵奔入襄平城去,閉門堅守不出。魏兵四面圍合。
時值秋雨連綿,一月不止,平地水深三尺,運糧船自遼河口直至襄平城下。魏兵皆在水中,行坐不安。左都督裴景入帳告曰:“雨水不住,營中泥濘,軍不可停,請移於前面山上。”懿怒曰:“捉公孫淵只在旦夕,安可移營?如有再言移營者斬!”裴景喏喏而退。少頃,右都督仇連又來告曰:“軍土苦水,乞太尉移營高處。”懿大怒曰:“吾軍令已發,汝何敢故違!”即命推出斬之,懸首於轅門外。於是軍心震懾。
懿令南寨人馬暫退二十里,縱城內軍民出城樵採柴薪,牧放牛馬。司馬陳群問曰:“前太尉攻上庸之時,兵分八路,八日趕至城下,遂生擒孟達而成大功;今帶甲四萬,數千裡而來,不令攻打城池,卻使久居泥濘之中,又縱賊眾樵牧。某實不知太尉是何主意?”懿笑曰:“公不知兵法耶?昔孟達糧多兵少,我糧少兵多,故不可不速戰;出其不意,突然攻之,方可取勝。今遼兵多,我兵少,賊飢我飽,何必力攻?正當任彼自走,然後乘機擊之。我今放開一條路,不絕彼之樵牧,是容彼自走也。”陳群拜服。
於是司馬懿遣人赴洛陽催糧。魏主曹睿設朝,群臣皆奏曰:“近日秋雨連綿,一月不止,人馬疲勞,可召回司馬懿,權且罷兵。”睿曰:“司馬太尉善能用兵,臨危制變,多有良謀,捉公孫淵計日而待。卿等何必憂也?”遂不聽群臣之諫,使人運糧解至司馬懿軍前。
懿在寨中,又過數日,雨止天晴。是夜,懿出帳外,仰觀天文,忽見一星,其大如鬥,流光數丈,自首山東北,墜於襄平東南。各營將士,無不驚駭。懿見之大喜,乃謂眾將曰:“五日之後,星落處必斬公孫淵矣。來日可併力攻城。”眾將得令,次日侵晨,引兵四面圍合,築土山,掘地道,立炮架,裝雲梯,日夜攻打不息,箭如急雨,射入城去。
公孫淵在城中糧盡,皆宰牛馬為食。人人怨恨,各無守心,欲斬淵首,獻城歸降。淵聞之,甚是驚憂,慌令相國王建、御史大夫柳甫,往魏寨請降。二人自城上系下,來告司馬懿曰:“請太尉退二十里,我君臣自來投降。”懿大怒曰:“公孫淵何不自來?殊為無理!”叱武士推出斬之,將首級付與從人。從人回報,公孫淵大驚,又遣侍中衛演來到魏營。司馬懿升帳,聚眾將立於兩邊。演膝行而進,跪於帳下,告曰:“願太尉息雷霆之怒。剋日先送世子公孫修為質當,然後君臣自縛來降。”懿曰:“軍事大要有五:能戰當戰,不能戰當守,不能守當走,不能走當降,不能降當死耳!何必送子為質當?”叱衛演回報公孫淵,演抱頭鼠竄而去。
歸告公孫淵,淵大驚,乃與子公孫修密議停當,選下一千人馬,當夜二更時分,開了南門,往東南而走。淵見無人,心中暗喜。行不到十里,忽聽得山上一聲炮響,鼓角齊鳴:一枝兵攔住,中央乃司馬懿也;左有司馬師,右有司馬昭,二人大叫曰:“反賊休走!”淵大驚,急撥馬尋路欲走。早有胡遵兵到;左有夏侯霸、夏侯威,右有張虎、樂綝:四面圍得鐵桶相似。公孫淵父子,只得下馬納降。懿在馬上顧諸將曰:“吾前夜丙寅日,見大星落於此處,今夜壬申日應矣。”眾將稱賀曰:“太尉真神機也!”懿傳令斬之。公孫淵