請旨封盧植為尚書令,荀彧、李儒、賈詡並為為尚書。命荀彧舉薦人才,荀彧舉薦了鍾繇、郭嘉、荀攸、陳群等人。劉備請旨封鍾繇為涼州刺史,封荀攸為尚書,擢拔郭嘉為大將軍府參軍,封楊彪之子楊修為大將軍府主薄。漢帝封劉備為漢安公,假節。
不久青州傳來消息,袁紹擊潰田楷,占據青州。劉備斥責袁紹,命袁紹讓出青州。袁紹不許,上書申辯。劉備大怒,命幽州牧劉虞、並州刺史公孫瓚、兗州刺史張邈、徐州刺史陶謙率軍助戰。自己親自領兵八萬,沿河內直逼鄴城。
袁紹大驚,派顏良、文醜領兵五萬進駐朝歌,準備抵抗朝廷大軍。沮授急勸不可讓顏良二人單獨掌兵,應該派謀士輔佐,袁紹不聽。聽聞劉虞派兵攻中山國、河間國,公孫瓚派兵攻常山國,張邈派兵攻清河國,陶謙派兵攻青州,袁紹大懼,急忙詢問對策。監軍沮授急聲道:“應該迅速全力派兵北攻劉虞,占據幽州,這樣進可攻退可守!”別駕田豐也附和道:“以少量兵馬牽製劉備,主公親率主力北上直搗幽州,否則四麵合圍,咱們大勢去矣!”
袁紹遲疑不決,於是任命大將崔巨業率軍三萬北攻幽州,派大將蔣奇率軍五千迎戰公孫瓚,派張郃率軍五千抵擋張邈軍,派高覽率軍五千抵擋陶謙軍。袁紹與曹操等人率軍五千直奔蕩陰,為顏良後盾,命大將淳於瓊押運軍糧。
劉備率軍與顏良在朝歌對峙,兩軍幾番鏖戰,難分勝負。劉備詢問如何破敵,陳登獻計道:“顏良、文醜勇而無智,一戰可擒。派趙將軍挑戰,佯裝敗退,必然可以擊潰他們。”劉曄笑道:“不如派兵偷襲黎陽,既可以威脅敵人側翼,又能夠與張邈軍會合,大局上壓製袁紹,袁紹必然退軍。”
劉備擊掌道:“兩位的意見一個是著眼戰局,一個著眼戰場,都有道理。這樣吧,命太史慈領軍奇襲黎陽,派趙雲領兵挑戰顏良。”劉備分兵偷襲黎陽,黎陽袁軍據守城池,兩軍鏖戰數日,太史慈始終拿不下黎陽。太史慈大怒,命人取來弓箭,拉起神雕弓接連射倒敵軍大旗,三軍氣勢大振。太史慈身先士卒,率先攻上城池,奪下黎陽。
顏良得知黎陽被奪,急忙命文醜率軍去救。這時趙雲率軍挑戰,顏良大怒,率軍出擊。兩軍鏖戰,趙雲且戰且退,引顏良來追。顏良剛開始猶疑,連敗趙雲三陣,逐漸傲氣衝天,揮軍追殺。不料半途遭到張飛、趙雲、張遼三部截殺,死傷慘重。趙雲率領親衛衝殺,大破顏良軍陣,直奔顏良衝去。顏良抬眼見趙雲在萬軍中殺出一條血路,急忙親自迎戰。趙雲施展梅花槍法,攻得顏良節節敗退。數百回合挑傷顏良十餘處,顏良大駭,撥馬回奔。趙雲馬快如電,急追趕上,一槍刺死顏良。劉備率軍衝殺,大敗顏良軍。
文醜進軍黎陽,被後將軍黃忠率軍截殺。黃忠一馬當先,直奔文醜軍中衝去。文醜大怒,也率軍衝殺,兩軍鏖戰半日,血染清河。黃忠直奔文醜衝殺,兩人鏖戰半日,文醜力怯,急忙撥馬敗退。黃忠馬快如雷,一刀劈死文醜。
袁紹收拾殘軍,隻有三萬大軍,急忙退守清水河。劉備占據蕩陰,劍指清水河。袁紹上書請罪,希望繼續擔任冀州牧。劉備不許,改任袁紹為渤海太守。袁紹大怒,據守清水。這時公孫瓚擊潰蔣奇,占據了常山。張邈軍擊敗張郃,占據清河國,逼近廣宗。陶謙軍戰敗高覽,收複青州。劉虞戰敗一陣後,烏桓單於丘力居率騎兵七千前來助戰,鮮卑、匈奴紛紛派兵助戰,大敗崔巨業。劉虞軍趁機追殺,占領中山郡。
袁紹見敗局已定,一邊據守鄴城,一邊再度上書請罪,請求擔任冀州刺史。劉備不許,仍舊任命袁紹為渤海太守。袁紹怒不可遏,誓死不降。曹操見敗局已定,忙請求聯絡泰山賊,領著典韋等人直奔徐州而去。