曹操基本統一北方後,作玄武池訓練水兵,並對可能動亂的關中地區采取措施,隨即於建安十三年七月出兵十多萬,南征荊州即今約湖北、湖南一帶,欲一統南北。
此時,孫權已自江東統軍攻克夏口即今武漢境,打開了西入荊州的門戶,正想吞並荊、益州,再向北發展。而依附荊州牧劉表的劉備,三顧茅廬得諸葛亮為謀士,以其隆中對策,製定先占荊、益,聯合孫權,進圖中原的策略,並在樊城大練水陸軍。
曹操軍水土不服、不擅長水戰、戰馬無糧等弱點,堅定了孫權抗曹決心。孫權不顧主張降派張昭等人的反對,命周瑜為大都督,程普為副都督,魯肅為讚軍校尉,率三萬精銳水兵,與劉備合軍共約五萬,逆江水而上,進駐夏口。
曹操乘勝取江陵後,又命劉表大將文聘為江夏太守,仍統本部兵,鎮守漢川即今江漢平原。益州牧劉璋也遣兵給曹操補軍,開始向朝廷交納貢賦。曹操更加驕傲輕敵,不聽謀臣賈詡暫緩東下的勸告,送信恐嚇孫權,聲稱要決戰吳地。同年冬季,曹操親自統軍順長江水陸並進。
孫劉聯軍在夏口部署後,逆江迎擊曹軍,兩軍在赤壁相遇。曹軍步騎麵對大江,失去威勢,新改編的荊州水兵,戰鬥力差,又逢疾疫流行,以致初戰失利,慌忙退向北岸,屯兵烏林即今湖北洪湖境,與孫劉聯軍隔江對峙。
曹操下令將戰船相連,減弱了風浪顛簸,利於北方籍兵士上船,想加緊演練,待機攻戰。周瑜鑒於敵眾己寡,久持不利,決意尋機速戰。部將黃蓋針對曹軍連環船的弱點,建議火攻,得到讚許。
黃蓋立即遣人送偽降書給曹操,隨後帶船數十艘出發,前麵十艘滿載浸油的幹柴草,以布遮掩,插上與曹操約定的旗號,並係輕快小艇跟在船後,順東南風駛向烏林。
接近對岸時,戒備鬆懈的曹軍皆爭相觀看黃蓋來降。此時,黃蓋下令點燃柴草,各自換乘小艇退走。火船乘風闖入曹軍船陣,頓時一片火海,迅速延及岸邊營屯。聯軍乘勢攻擊,曹軍傷亡慘重。曹操深知已不能挽回敗局,下令燒掉船,引軍退走。
孫劉聯軍水陸並進,追擊曹軍。曹操引軍離開江岸,取捷徑往江陵,經華容道遇泥濘,墊草過騎,得以脫逃。曹操留曹仁守江陵,滿寵屯當陽,自己返回北方。
周瑜等人與曹仁隔江對峙,並遣甘寧攻曹軍的夷陵即今宜昌境。曹仁分兵圍甘寧,周瑜率軍去救,大破曹軍,之後周瑜還軍渡江屯北岸,繼續與曹仁對峙。劉備自江陵回師夏口後,逆漢水欲迂回曹仁後方。曹仁自知再難相持,第二年被迫撤退。
這場戰役被後世稱之為赤壁之戰,曹操自負輕敵,指揮失誤,加之水軍不強,且軍中出現瘟疫,最終導致戰敗。
孫權、劉備在強敵麵前,冷靜分析形勢,結盟抗戰,揚水戰之長,巧用火攻,創造了中國軍事史上以弱勝強的著名戰例,同時也促使了三國鼎立的形成。