孫堅被劉表軍隊圍住後,幸虧程普、黃蓋、韓當三將的拼死救援,才得以逃脫,但兵力損失了大半。他們奪路而逃,引兵回到了江東。從此,孫堅與劉表結下了怨恨。
另一方面,袁紹屯兵在河內,因為缺少糧草而苦惱。冀州牧韓馥主動派人送來糧食以資助軍用。袁紹的謀士逢紀趁機建議說:“大丈夫應該縱橫天下,怎能等待別人送糧為食呢?冀州是錢糧廣盛之地,將軍何不趁機奪取它?”袁紹回答說:“我還沒有想到好的策略。”逢紀接著說:“可以暗中派人送信給公孫瓚,讓他進兵攻打冀州,我們約定夾攻,他一定會興兵前來。韓馥是個無謀之輩,到時候必然會請將軍您來主持州事,我們就可以趁機奪取冀州,唾手可得。”袁紹大喜,立刻寫信給公孫瓚。公孫瓚收到信後,得知可以共同攻打冀州並平分其地,非常高興,立即興兵前來。袁紹卻又暗中派人將訊息告訴韓馥。
韓馥得知訊息後,慌忙召集荀諶、辛評兩位謀士商議對策。荀諶建議說:“公孫瓚率領燕、代兩地的軍隊長驅直入,其鋒芒不可阻擋。再加上有劉備、關羽、張飛等人的幫助,我們難以抵擋。現在袁紹智勇過人,手下名將眾多,將軍可以請他來共同治理州事,他必然會厚待將軍您,這樣就不用擔心公孫瓚了。”韓馥於是派遣別駕關純去請袁紹前來。
然而長史耿武卻勸諫說:“袁紹現在是一支孤軍窮兵,完全依賴我們的支援才能生存。他就像嬰兒在我們的股掌之上一樣容易控制。如果我們斷絕了他的糧草供應,他立刻就會餓死。為什麼要把州事交給他呢?這簡直是引虎入羊群啊!”但韓馥卻回答說:“我原本是袁家的舊部屬下,才能又不如袁紹。古人選擇賢者而讓位給他,你們為什麼要嫉妒呢?”耿武嘆息道:“冀州完了!”於是有三十多人棄職而去。只有耿武和關純埋伏在城外等待袁紹的到來。
數日後袁紹引兵到達冀州城下。耿武和關純拔刀而出想要刺殺袁紹但卻被顏良和文丑所殺。袁紹進入冀州後以韓馥為奮威將軍並任命田豐、沮授、許攸、逢紀等人分掌州事完全剝奪了韓馥的權力。韓馥後悔莫及於是拋棄家小獨自前往陳留太守張邈處投奔去了。
公孫瓚得知袁紹已經佔據了冀州便派遣弟弟公孫越來見袁紹想要分一杯羹。但袁紹卻回答說:“讓你哥哥親自來和我商議吧。”公孫越告辭歸去但在路上被董卓的將領所射殺。公孫瓚得知弟弟的死訊後大怒道:“袁紹誘騙我起兵攻打韓馥他卻趁機奪取冀州現在又詐稱是董卓的兵射死我的弟弟這個仇怎麼能不報!”於是他盡起本部兵馬殺向冀州而來。
袁紹得知公孫瓚的軍隊到來也領軍出戰。兩軍在磐河之上相遇袁紹的軍隊在磐河橋東公孫瓚的軍隊在橋西。公孫瓚立馬橋上大呼道:“背信棄義之徒怎麼敢出賣我!”袁紹也策馬來到橋邊指著公孫瓚說:“韓馥無才願意把冀州讓給我與你有什麼關係?”公孫瓚回答說:“過去我認為你是忠義之人推舉你為盟主。但現在你的所作所為真是狼心狗行之徒有什麼面目立足於世間!”袁紹大怒道:“誰能擒住他?”話音未落文丑已經策馬挺槍直殺上橋去與公孫瓚交鋒。戰不到十幾個回合公孫瓚就抵擋不住敗陣而逃文丑則乘勢追趕。公孫瓚逃入自己的軍陣中文丑則直接衝入中軍往來衝突如入無人之境。公孫瓚手下的四員健將一起迎戰但被文丑一槍刺死一將另外三將也都逃走。文丑一直追趕公孫瓚到軍陣之外公孫瓚只好望著山谷而逃。文丑大聲呼叫著讓他下馬投降但公孫瓚的弓箭都已經用盡頭盔也掉落在地上他只能披散著頭髮縱馬狂奔在山坡上。他的馬突然前蹄失陷公孫瓚翻身跌落在山坡下。文丑急忙捻槍來刺但這時草坡左側突然轉出一個少年將軍他飛馬挺槍直取文丑。公孫瓚趁機爬上了山坡看那少年將軍生得身長八尺濃眉大眼闊面重頤威風凜凜。他與文丑大戰五六十個回合不分勝負。