初次交鋒,袁紹便連失兩員名將,士氣銳減。曹操企圖乘勝追擊,結果未能取勝。於是雙方展開了對峙。
經過一段時間的休整,袁紹又調集主力部隊向官渡進攻,準備與曹操決戰。此時曹操的軍隊是糧少兵寡,便有收兵的打算。曹操派人給荀彧送信,商討撤兵之事。可是荀彧分析了形勢說:“袁紹以全師聚集官渡,要與明公決勝負。明公以至弱擋至強,若不能打敗袁紹,必為袁紹所乘。這是處在改變天下大局的關頭。”並且進一步指出,曹操以袁紹十分之一的兵力,阻其半年有餘,袁紹不能取勝,說明他已是智窮計盡,千萬不可失去這次擊敗袁紹的機會。堅定了曹操與袁紹決戰的信心。接著曹操采納了荀彧的計策,派徐晃、史渙截燒了袁紹幾千車軍糧。不久,袁紹又從河北運到軍糧1萬多車,囤積在大營以北的烏巢,派大將淳於瓊率近萬名士兵守護。這時袁紹的謀士許攸因家屬被捕而投奔了曹操,把袁紹屯糧的情況全部告訴曹操。
曹操大喜,親自率5000人馬,借夜色掩護,打著袁軍旗號,直奔烏巢。一到烏巢,便縱兵圍屯焚燒起來,淳於瓊慌忙迎戰。曹操率軍猛攻,大破袁軍,斬殺淳於瓊等數千人,把袁紹的1萬多車糧食全部燒盡。
其實在曹操夜襲烏巢時,張郃已建議袁紹派重兵前往營救,可是他隻派了少數部隊前往。相反自作聰明地對袁譚說:“趁曹操進攻淳於瓊,我們就去拿下他的大營,使他再無歸處了。”竟令張郃、高覽率重兵去攻打,結果大營未攻下,損失慘重。
烏巢失守,糧食盡焚,使袁軍大亂。張郃見大勢已去,又有郭圖陷害他,說他“快軍之敗,幸災樂禍,恐懼不安”。便一氣之下,與高覽投奔了曹操。袁軍全線崩潰,曹操乘勢發起總攻,大獲全勝。袁紹帶領800騎兵渡河北逃,餘部投降。此一戰,曹操斬殺袁軍將士7萬多人。
官渡之戰的勝利,改變了整個局勢,為曹操統一北方奠定了基礎。
曹操平定了冀、幽、並、青州後,又征服了烏桓。曹操回到鄴城後,為了加強對朝廷的控製,他上書漢獻帝,“罷三公官,置丞相、禦史大夫”。結果由他自己擔任了丞相,事權歸一,總攬了朝中大權。曹操的舉動,引起了一些士族和皇族成員的極大不滿。
此時孫權在長江下遊,皇族劉表占據荊州。為了實現統一中國的雄心,曹操決定率軍南下。他首先攻擊的目標是荊州,然後由徐州沿江東下,夾擊孫權。
曹操親自率領10萬大軍直奔宛城,還沒有到達荊州,劉表因病去世。劉表的兩個兒子向來不和,長子劉琦在劉表死前出任江夏太守去了,次子劉琮繼承了荊州牧。曹操的軍隊一到新野,劉琮便派使者來迎降了,曹操非常高興,便欣然接受了他的降請,並且接收了劉表的七八萬軍隊和大量軍用物資。此時曹軍已擴大到二十幾萬人,並在江陵設立了大本營。
劉備自被曹操趕出徐州後,失去了地盤,隻好依附劉表,屯兵樊城。他正在加緊訓練軍隊,準備迎擊曹軍。等他知道劉琮投降時,曹軍已到達宛城,於是急忙率領1萬多軍隊向江陵逃去。曹操擔心劉備先占江陵,便親率5000騎兵,日夜兼程進行追擊,結果在長阪擊潰劉備,占據江陵。曹操輕取荊州,再據江陵,躊躇滿誌,準備一舉擊敗孫權。
曹操大軍席卷江東,孫權手下的文武官員十分懼怕。是戰是降,孫權一時拿不定主意。又收到曹操的恐嚇信,信中號稱有80萬大軍,要在吳地同孫權一決高下,意思是逼孫權投降。劉備準備聯合孫權共同抗擊曹操,便令諸葛亮去遊說孫權。諸葛亮向孫權分析了取得勝利的可能性:曹操士卒疲乏,不習水戰,新收民眾心裏不服。孫權表示讚同,於是孫劉聯軍組成,準備共同抗擊曹操。
當時,曹操的軍隊屯駐烏林,孫權、劉備聯軍駐在赤壁。曹軍麵對大江,發揮不出戰鬥優勢。水軍中又有不習水戰的,而新附的水軍又沒有戰鬥力。再加上北方人不習慣水上生活,很多人得了流行性疫病。為了減少風浪的波動,曹操下令把船艦分排用鐵環鎖在一起。老謀深算的曹操,自以為這是好辦法,便準備尋機向南岸發動進攻。東吳老將黃蓋,看出了連環船的致命要害,趁機向周瑜獻上火攻之計。黃蓋便寫了一封詐降書,約定好投降的日期和信號。曹操因屢戰皆勝,便放鬆了警惕,欣然接受。
一天夜晚,黃蓋帶領數十艘大船出發,船上裝滿了澆了油的幹柴草,外麵用布圍好,插上約定旗號,順風向曹操大營駛去。在離曹營不遠的地方,黃蓋命令同時點火,衝向水寨。火借風勢,頃刻間曹營中一片火海。結果曹操的連環船被燒得一幹二淨,周瑜和劉備乘勢向曹軍猛攻,曹軍大敗。這便是有名的赤壁之戰。從此曹操退回北方。
赤壁之戰失利後,曹操才真正感到兼並群雄、消除異己並不那麼容易。此時,他的政敵們正在利用他的失敗加緊了對他的攻擊。尤其他在政治上實行“挾天子以令諸侯”的方針,政敵們懷疑他有“不遜之誌”,要他交出兵權。權力之爭是你死我活的,尤其在漢朝末年那特殊的戰亂年代,更是如此。當然曹操對威脅到自己政權的人,是從來不講客氣的。官渡之戰前,他對車騎將軍董承等人的政變,進行了無情鎮壓,尤其南下兩個月後,便命親信殺死了政敵孔融。
曹操應該說是一個有頭腦的政治家,如果一味殺戮消滅政敵,反而會樹敵日多,應該在意識形態方麵做些工作。於是他發表了《讓縣自名本誌令》,表明自己對漢室的忠心,決無“不遜之誌”。同時也表明讓他放棄權力是不可能的。可是過了不久,權力的欲望竟使他又逼死了心腹謀士荀彧。說穿了,他的這個目的,隻是想安撫一下政敵,但真的對他有威脅,他還是不留情麵的。