軍隊來到城外,分三處紮營,每天出兵與曹操對峙。袁尚屢戰屢敗,而曹操的軍隊則連連勝利。到了建安八年春二月,曹操分兵攻打,袁譚、袁熙、袁尚、高幹都大敗,放棄黎陽逃跑,曹操率軍追擊到冀州。袁譚和袁尚入城堅守,而袁熙和高幹在離城三十里的地方紮寨,虛張聲勢。曹操的軍隊連續攻打多日,但仍未能攻下冀州。
郭嘉進言說:“袁氏家族廢長立幼,兄弟之間權力相爭,各自樹立黨羽,如果急於攻打他們則會相互救援,如果緩攻則他們會自相殘殺。不如我們舉兵南向荊州,去征討劉表,等待袁氏兄弟之間的變化。等他們發生變故後,我們再趁機出擊,可以一舉平定他們。”曹操認為這個建議很好,於是命令賈詡為太守守黎陽,曹洪引兵守官渡,自己則率領大軍向荊州進兵。
聽到曹操的軍隊自行撤退的訊息後,袁譚和袁尚都感到高興並互相慶賀。袁熙和高幹也各自離去。袁譚與郭圖、辛評商議說:“我是長子,卻不能繼承父業,而袁尚是繼母所生,卻繼承了父親的爵位,我心中實在不甘。”郭圖說:“主公可以在城外佈置兵力,假裝請袁尚和審配來飲酒,然後埋伏刀斧手殺掉他們,這樣大事就可以成功了。”袁譚聽從了他的建議。
正好此時別駕王修從青州來到,袁譚將這個計劃告訴了他。王修說:“兄弟就像人的左右手一樣。現在你和別人爭鬥,卻要斷掉自己的右手,還說自己一定能勝利,這怎麼可能呢?那些喜歡離間別人骨肉的人,只是為了追求一時的利益,希望你不要聽信他們的話。”但袁譚很生氣地斥退了王修並派人去請袁尚。
袁尚與審配商議後認為這一定是郭圖的計策並決定趁機攻打袁譚。於是袁尚親自率軍五萬出城與袁譚交戰並大敗了他。袁譚逃到平原後再次與郭圖商議進兵並派岑璧為將領兵前來迎戰袁尚。但岑璧也被袁尚的大將呂曠斬殺於馬下袁譚的軍隊再次潰敗逃回平原堅守不出。
審配勸袁尚繼續進兵圍攻平原但袁譚堅守不住於是派辛毗作為使者向曹操投降並請求他出兵攻打冀州。曹操此時正在西平伐劉表劉表則派劉備作為前部迎戰曹操。但辛毗在雙方還未交鋒時就趕到了曹操的營寨中向他呈上了袁譚的投降書信。
曹操看了信後留下辛毗在營中並召集文武官員商議對策。程昱等人認為袁譚是因為被袁尚攻擊得太急才不得已投降的因此不可信任;但荀攸則認為這是一個好機會可以趁機先除掉袁尚再觀其變化並滅掉袁譚從而平定天下。曹操最終採納了荀攸的建議決定出兵幫助袁譚攻打袁尚。
曹操非常高興,於是邀請辛毗一起飲酒,並問他:“袁譚的投降,是真心的還是假意的?袁尚的軍隊,我們真的能夠必勝嗎?”辛毗回答說:“明公,您不用問是真是假,只需看形勢如何。袁氏連年戰敗,軍隊疲憊不堪,內部謀臣被殺,兄弟之間因讒言產生裂痕,國家一分為二,再加上饑荒和天災人禍,無論是智者還是愚者,都知道他們已經土崩瓦解,這是天要滅袁氏的時候。現在明公您提兵攻打鄴城,如果袁尚不回救,就會失去他的老巢;如果他回救,袁譚就會趁機從後面襲擊他。以明公您的威勢,攻擊疲憊不堪的敵軍,就像迅風掃秋葉一樣容易。如果不抓住這個機會,而去攻打荊州,荊州是個豐饒安樂的地方,國家和民眾都順從,不容易動搖。何況現在四方的禍患,沒有比河北更大的了,河北一旦平定,您的霸業就完成了。希望明公您能仔細考慮。”曹操聽後非常高興,說:“真遺憾我和辛毗相見得太晚了!”於是當天就督率軍隊返回攻打冀州。
劉備擔心曹操有詭計,不敢追擊,帶領軍隊自行返回荊州。
再說袁尚得知曹軍渡過黃河,急忙帶領軍隊返回鄴城,命令呂曠、呂翔斷後。袁譚看到袁尚撤軍,就大舉平原的軍隊,隨後追趕。追了不到數十里,突然一聲炮響,兩軍