建安十年(205)正月,曹操攻克南皮,斬殺袁譚、郭圖。陳琳被俘,曹操說:“卿當初為本初寫檄文,曆數孤的罪狀就行了,幹嘛還要罵我的祖宗呢?”陳琳也覺得不好意思了,連忙謝罪。曹操請他擔任自己的秘書長。
三月,幽州刺史袁熙的部將焦觸、張南嘩變,袁熙、袁尚兄弟逃奔遼西烏桓蹋頓部落。四月,黑山黃巾統帥張燕率部十萬歸降,封安國亭侯。
同月,遼西烏桓進攻鮮於輔於獷平。八月,曹軍進討,烏桓出塞。
十月,高幹趁曹軍擊討烏桓之際,聯絡部分關西將領,據並州反叛。曹操一麵派西平太守杜畿進擊關西,一麵讓馬騰從西部夾擊,關西遂平。
建安十一年(206)正月,曹操留兒子曹丕守鄴城,以崔琰為輔,自率兵馬進擊高幹,在壺關將高幹包圍。三月,壺關降,高幹逃入南匈奴求救,遭到單於的拒絕。高幹隻得南奔劉表,至弘農上洛,被當地都尉王琰捕殺。曹操命梁習為並州刺史,打擊豪強,募歸遠逃塞外、流入胡狄的漢民,委任名士為地方長官,並州從此安寧。在並州遊學的學者仲長統早就對高幹說:“君有雄心,但無雄才。”並州破後,荀彧舉薦他出任尚書郎。仲長統,字公理,山陽高平人。本朝著名的思想家和政治理論家,有《昌言》傳世,論述治亂政體;又有《樂誌論》傳世,其中討論人生的意義,皆以黃老道家自然思想為宗旨。
八月,遼西烏桓蹋頓部聯合烏桓諸部,在袁氏兄弟的唆使下,大舉犯邊。曹操不得不遠征塞外。
建安十二年(207)二月,曹操在鄴城大封功臣二十多人,全部封侯。隻有荀彧屢屢辭讓,不給麵子。自董承事件之後,荀彧在是否擁戴漢室的問題上,私下與曹操有了分歧。
同月,曹操點起大軍,進擊烏桓。大家都不同意,一則出塞作戰地理險要,風俗相異;二則怕劉表、劉備北上襲擊許都。隻有郭嘉一個勁地堅持說:“烏桓從來就認為漢人不可能出塞遠征,一旦深入,他們必無防備。袁氏兄弟尚有勢力,不可姑息。至於劉表,自知劉備比他厲害,不可能不防劉備而舉國北進。”到了易城,郭嘉又一反遠征軍的常規戰法,讓曹操拋棄輜重,輕裝速進。