秋季九月,曹操回到鄄城。呂布到達乘氏縣,被他的同縣人李進所打敗,往東到山陽縣駐守。這時,袁紹派人勸說曹操,想聯絡和好。曹操新近丟掉了兗州,軍糧吃光,準備答應他。程昱勸阻曹操,曹操聽從他的意見,冬季十月,曹操到了東縣。

二年春季,曹操襲擊定陶。濟陰太守吳資守衛南城,沒有攻下。恰逢呂布來到,曹操又打敗了他。夏季,呂布部將薛蘭、李封在巨野駐守,曹操攻擊他,呂布援救薛蘭,薛蘭戰敗,呂布逃跑,終於斬了薛蘭等人。呂布又從東緡(mín)和陳宮帶領一萬多士兵前來交戰,當時曹操士兵少,便設下埋伏,出奇兵襲擊,大敗呂布。呂布夜裏逃跑,曹操再次進攻。攻下了定陶,分兵平定了各縣。呂布向東投奔劉備,張邈跟從著呂布,派他的弟弟張超帶領家屬保守雍丘。秋季八月,曹操圍攻雍丘。冬季十月,漢獻帝任命曹操為兗州牧。十二月,雍丘被攻陷,張超自殺。曹操滅了張邈三族。張邈到袁術那裏請求救兵,被他的部下所殺。兗州平定,曹操就向東攻取陳國地區。

這年,長安騷亂,漢獻帝往東遷徙(xǐ),在曹陽戰敗,皇帝渡過黃河逃到安邑。

建安元年春季正月,曹操的軍隊到達武平,袁術安排的陳國國相袁嗣投降。

汝南、穎川郡的黃巾軍何儀、劉辟、黃邵(shào)等部,各有數萬人,起初響應袁術,又依附孫堅。二月,曹操進軍討伐,打敗了他們,斬了劉辟、黃邵等,何儀和他的部下全部投降。皇帝任命曹操為建德將軍。夏季六月,升為鎮東將軍,封為費亭侯。秋季七月,揚奉、韓暹(xiān)偷偷逃跑了。漢獻帝授予曹操符節、黃鉞(yuè)總領尚書事。洛陽殘破,董昭等勸說曹操把都城遷到許縣。九月,漢獻帝遷往東麵的許縣,任命曹操做大將軍,封為武平侯。自從皇帝往西遷都長安,朝廷一天比一天混亂,到這時宗廟、社稷製度才建立。

皇帝東遷的時候,楊奉從梁縣企圖截擊漢獻帝,沒有趕上。冬季十月,曹操征討楊奉,楊奉向南投奔袁術,於是曹操就攻打他的梁縣的軍營,占領了它。這時朝廷任命袁紹做太尉,袁紹對自己的官職在曹操之下而感到羞恥,不肯接受。曹操於是堅決推辭,把大將軍的官職讓給袁紹。漢獻帝於是任命曹操做司空,兼車騎將軍。這年采用棗祗(zhī)、韓浩等人的建議,開始實行屯田製。

張濟從關中跑到南陽。張濟死後,侄子張繡統領他的部隊。建安二年春季正月,曹操到達宛城,張繡投降,不久為此而後悔,再次反叛。曹操跟他交戰,軍隊打了敗仗,自己被流箭所射中,大兒子曹昂、侄子曹安民遇難。曹操於是率領軍隊回到舞陰,張繡帶領騎兵前來侵掠,曹操打敗了他。張繡逃到穰(ránɡ)縣,與劉表聯合。曹操對各將領說道:“我接受張繡等人投降,錯誤在於沒有立即取得他們的人質,以致弄到這種地步。我明白失敗的原因了。各位看吧,從今以後不會再失敗了。”於是回到了許都。

袁術打算在淮南稱帝,派人告訴呂布。呂布扣留了他的使者,把他的信上報朝廷。袁術惱怒,攻打呂布,被呂布所打敗。秋季九月,袁術侵擾陳縣,曹操東征袁術,袁術聽到曹操親自前來,扔下軍隊逃跑,留下他的部將橋蕤(ruí)、李豐、梁紀、樂就。曹操到達,打敗了橋蕤等人,把他們全斬了。袁術逃過淮河。曹操回到許都。

曹操從舞陰回來,南陽、章陵各縣又反叛而歸附張繡,曹操派曹洪攻打他們,失利,退守葉縣,不斷地被張繡、劉表所侵擾。冬季十一月,曹操親自往南征討,到達宛城。劉表部將鄧濟據守湖陽。曹操攻占了湖陽,活捉了鄧濟,湖陽投降。攻打舞陰,也把它攻下了。

三年春季正月,曹操回到許都,開始設置軍師祭酒的官職。三月,曹操在穰縣圍攻張繡。夏季五月,劉表派兵救援張繡,切斷曹軍的後路。曹操率領軍隊往回撤退,張繡的軍隊前來追趕,曹操的軍隊不能前進,就連接軍營逐漸向前推進。曹操寫給荀彧的信說:“敵人前來追趕我,即使一天走幾裏地,我估計到達安眾,必定打敗張繡了。”到達安眾,張繡和劉表的軍隊聯合把守險要地區,曹操的軍隊前後受到敵人的攻擊。曹操於是乘夜在險要地區開鑿地道,全部運走了軍用物資,設置奇兵。正好天亮,敵人以為曹操偷偷逃跑了,全軍前來追趕。曹操於是出動奇兵,步兵和騎兵夾擊,大敗敵軍。秋季七月,曹操回到許都,苟彧問曹操:“先前預料敵人必定失敗,根據什麼呢?”曹操說:“敵人阻截我回軍,而跟被置於死地的我軍交戰,我因此知道將士奮死殺敵必定能夠取勝。”

袁術請求呂布攻打劉備,曹操派遣夏侯停援救劉備,交戰不利。劉備被高順打敗。九月,曹操東征呂布。冬季十月,在彭城進行屠殺,前進到了下邳(pī),呂布親自帶領騎兵迎戰。大敗呂布,俘獲了他的勇將成謙。追趕到城下,呂布恐慌,準備投降。陳宮等人阻止了他的打算,向袁術求救,鼓勵呂布出城交戰,又戰敗,於是回城固守,曹操沒有將城攻下。這時曹操連續作戰,士兵疲憊,打算回軍,采用荀攸、郭嘉的計策,決開泗水、沂水來淹下邳城。一個多月後,呂布的部將宋憲、魏續等人活捉了呂布、陳宮,把他們殺了,全城投降。太山郡的臧霸、孫觀。吳敦、尹禮、昌豨各自聚集一幫人。呂布打敗劉備的時候,臧霸等人全跟隨呂布。呂布戰敗,曹操俘獲了臧霸等人,寬厚地接納、對待他們,最後劃出青州。徐州靠海區委派他們管理,分出琅琊、東海、北海地區,設立城陽、利城、昌慮郡。

戰官渡破袁紹

袁紹已經吞並了公孫瓚,兼並了四州的地區,率領軍隊十多萬人,將要進軍攻打許都。曹操各將領認為不可抵抗。曹操說:“我了解袁紹的為人,誌向大而才智小,表麵嚴厲而內心怯懦,嫉妒刻薄而缺少威望,考慮周全而猶豫不決,謀士多卻不為他所用,士兵雖多卻指揮籌劃不當,將領驕橫而且政令不統一,土地雖然廣闊,糧食雖然豐足,卻正好是把這些作為我的奉獻啊。”秋季八月,曹操向黎陽進軍,派臧霸等進入青州攻破齊、北海、東安,留下於禁在黃河邊駐守。九月,曹操回到許都,分出部分兵力把守官渡。冬季十一月,張繡率領部隊投降。十二月,曹操在官渡駐軍。

次年二月,袁紹派遣郭圖、淳於瓊、顏良在白馬攻打東郡太守劉延,袁紹領兵到了黎陽,準備渡過黃河。夏季四月,曹操往北救援劉延,荀攸勸說曹操道:“如今我們兵力少不能抵擋,分散敵人的兵力才可以取勝。您到了延津,裝作準備渡過黃河向他們的後方進軍,袁紹必定往西迎戰您,然後派輕裝部隊襲擊白馬,趁他們沒有防備,就可以捉住顏良了。”曹操聽從了荀攸的計策。袁紹聽說曹軍渡過黃河,立即分出兵力往西迎戰曹軍。曹操就率領軍隊急行,直奔白馬,離白馬尚有十多裏.顏良大驚,前來迎戰。曹操派張遼、關羽做先鋒,先打敗了敵人,斬了顏良,終於解除了白馬之圍,遷徙白馬的百姓,循著黃河朝西走。袁紹在這時渡過黃河追擊曹操的部隊。追到延津的南麵,曹操指揮軍隊在西麵山坡下紮營,派人登上營壘望敵軍,報告說:“大約有五六百騎兵。”過了一會兒,又報告:“騎兵逐漸增多,步兵多得數不過來。”曹操說:“不用再報告了。”就下令讓騎兵禦下馬鞍放開馬匹。這時,白馬駐軍的輜(zī)重已經上路。各將領認為敵軍的騎兵多,不如回去守衛軍營。荀攸道:“這是用來引誘敵人上鉤的,為什麼要離開這兒呢?”袁紹的騎兵將領文醜和劉備帶領五六千騎兵先後來到。各將領又說:“可以上馬了。”曹操說:“可以了。”於是大家都上馬,當時騎兵不足六百人,就揮軍出擊,大敗敵軍,斬了文醜。顏良、文醜都是袁紹的有名將領,兩次交戰,都被擒殺,袁紹的軍隊大為震動,曹操回軍官渡。袁紹進軍保衛陽武。關羽逃回劉備那兒。

八月,袁紹連接營壘逐漸向前推進,靠著沙丘駐紮,從東到西連綿數十裏。曹操也分紮營壘跟敵方對抗,交戰不利。當時曹操兵力不足一萬人,傷員占十分二三。袁紹軍隊前進到官渡,堆土山挖地道。曹操也在營內堆土山挖地道,跟敵軍對抗。袁紹軍射箭入曹軍營中,箭下如雨,走動的都要用盾牌遮擋,大家非常害怕。這時曹操糧食少,給荀彧寫信,商議打算撤回許都。荀彧回信說:“袁紹全部人馬聚集在官渡,準備跟您決一勝負。您以最弱小的兵力對抗最強大的敵軍,如果不能製服他,必定被敵軍所追逐,這是天下的重大轉機啊。況且袁紹隻是一個一般的豪雄罷了,能夠聚集人才卻不能使用人才。憑借您的神武英明並且加上以天子之命討伐叛亂的正當名義,有什麼事而不能做成功呢?”曹公聽從了荀彧的意見。

袁紹數千輛運送穀物的車子到達,曹操采用荀攸的計策,派徐晃、史渙去截擊,大敗袁軍,全部燒毀了袁紹的運糧車。曹操跟袁紹相持了幾個月,雖然每次交戰都斬殺敵將,但是兵少糧盡,士兵疲乏。曹操對運糧的人說道:“再過十五天替你們打敗袁紹,不再讓你們勞苦了。”冬季十月,袁紹派車運糧,令淳於瓊等五個人帶領一萬多士兵護送車隊,露宿在袁紹軍營北麵四十裏的地方。袁紹的謀臣許攸貪婪無度,袁紹不能滿足他,就前來投奔曹操,借機勸說曹操攻打淳於瓊等人。曹操身邊的人懷疑他。荀攸、賈詡勸說曹操采納。曹操於是留下曹洪防守,自己帶領五千步兵和騎兵乘夜前往,恰在天亮時到達。淳於瓊等人望見曹操兵少,出去到營門外布陣。曹操急速攻擊淳於瓊,淳於瓊退守營房,於是就攻打淳於瓊的營房。袁紹派騎兵援救淳於瓊。曹操身邊的人有的說:“敵人的騎兵逐漸接近,請求分兵抵抗他們。”曹操發怒說:“敵人到背後才報告!”士兵都拚死作戰,大敗淳於瓊等人,把他們全斬了。袁紹剛聽到曹操攻打淳於瓊時,對大兒子袁譚說道:“趁他攻打淳於瓊等人,我去攻占他的軍營,他就沒有地方落腳了!”於是派張郃(hé)、高覽攻打曹洪。張郃等人聽到淳於瓊敗亡,就前來投降。袁紹軍隊大潰敗,袁紹和袁譚扔下軍隊逃跑,渡過了黃河。曹軍追趕上他們,全部繳獲了他們的輜重、圖表文書和珍寶,俘虜了他們的部眾。曹操繳獲袁紹的信件中,有許都和曹軍中的人和袁紹來往信件,曹操把它們全部燒掉了。冀州各郡很多城邑都自動投降了。

六年夏季四月,曹操在黃河邊檢閱軍隊,攻擊袁紹在倉亭的軍隊,把它打敗。袁紹回來,又收攏被打散的士兵,平定了各反叛的郡縣。九月,曹操回到許都。

袁紹自從軍隊被打敗之後,發病吐血,在夏季五月死去。小兒子袁尚接替他的官職,袁譚自稱車騎將軍,駐紮在黎陽。秋季九月,曹操征討他們,連續交戰,袁譚、袁尚屢次戰敗退卻,堅守黎陽。

遠證烏桓

三郡烏桓趁天下的動亂,攻下幽州,掠取漢民合計十餘萬戶。袁紹把他們的首領都立為單於,把族人的女孩子作為自己的女兒,嫁給他們做妻子。遼西單於蹋頓尤為強大,被袁紹所看重,所以袁尚兄弟投奔他,頻繁入塞造成災難,曹操準備征討他們。

十二年春季二月,曹操從淳於返回鄴城。丁酉日,下令道:“我發動義軍鏟平暴亂,到現在有十九年了,所征討的必定戰勝,難道是我個人的功勞嗎?這是有才能的士大夫們的力量啊。天下雖然尚未完全安定,我應當和有才能的士大夫們一起平定它。可是獨自享有那些功勞,我怎麼能夠心安理得心安理得:自認為事倩做得合乎情理,心中坦然無憾。呢?要趕緊評定功績、實行封賞。”於是廣泛地封賞二十多位功臣,都封為列侯,其餘的人各按功勞大小受封,並且免除死難者的子孫的徭役,封賞或輕或重各有差別。