在袁譚敗亡的同時,其弟袁熙也禍從天降,為其將焦觸、張南所攻,不得已同袁尚奔走遼西,投靠烏桓。焦觸自號幽州刺史,率領諸郡太守和各縣令長,並數萬之眾降操,操矯詔封觸等為列侯。不久,故安趙犢、霍奴等人殺焦觸及涿郡太守,三郡(遼西、遼東、右北平)烏桓攻鮮於輔於獷平(今北京密雲東北)。夏四月,黑山軍張燕率其眾十餘萬降曹,操矯詔封燕為安國亭侯。八月,操討殺趙犢、霍奴等人。然後渡潞水救獷平,烏桓未戰而出塞。
是年十月,高幹聽說曹操北討烏桓,乘機即以並州叛, “執上黨太守,舉兵守壺關口。(曹操)遣樂進、李典擊之,幹還守壺關城”。當時與高幹相呼應的有:河內張晟有眾萬餘人,寇崤、澠間;弘農人張琰起兵;河東郡掾衛固及中郎將範先等外以請求不要征調太守王邑為名,而內實與高幹通謀。曹操很清楚,欲要擊滅高幹,這些小股勢力不可小視,必先除之。因此,曹操對荀彧說:“關西諸將,外服內貳,張晟寇亂崤、澠,南通劉表,(衛)固等因之,將為深害。當今河東,天下之要地也,君為我舉賢才以鎮之。”根據荀或的推薦,曹操以西平太守杜畿為河東太守。衛固等與高幹、張晟聯合攻杜畿,曹操使議郎張既征調關中諸將馬騰等,引兵會擊張晟等。結果大敗衛固、張晟,斬衛固、張琰等人,赦其餘黨。這樣一來,沒有多長的時間,高幹便也陷入了孤立無援之困境。
建安十一年(206)正月,曹操率軍親征高幹。高幹聽說曹操親率大軍而來, “乃留其別將守城,走入匈奴,求救於(匈奴)單於,單於不受。公(操)圍壺關三月,拔之。”高幹與數騎亡奔荊州,欲投劉表,走到洛河上遊,被上洛(今陝西商縣)都尉王琰捕殺。並州平,操以陳郡梁習以別部司馬領並州刺史。