沮授被袁绍拘禁在军中,这天夜里,他看到众星明亮地排列在天空,便让看守把他带到庭院中,仰观天象。忽然看见太白星逆行,侵犯了牛宿、斗宿的分野,大惊道:“大祸就要降临了!”于是连夜求见袁绍。当时袁绍已经喝醉睡下,听说沮授有密事禀报,就把他叫进来询问。沮授说:“我刚才观察天象,看到太白星在柳宿、鬼宿之间逆行,流光射入牛宿、斗宿的分野,恐怕会有贼兵劫掠的灾祸。乌巢是屯粮的地方,不能不防备。应该赶紧派遣精兵猛将,在偏僻的山间小路巡逻放哨,以免被曹操算计。”袁绍愤怒地叱责道:“你是获罪之人,怎么敢胡言乱语迷惑众人!”又叱责看守说:“我让你拘禁他,你怎么敢把他放出来!”于是下令斩杀看守,另外派人监押沮授。沮授出去后,掩面流泪叹息道:“我军灭亡就在旦夕之间,我的尸骸不知道会流落何处啊!”后人有诗感叹道:
逆耳忠言反见仇,独夫袁绍少机谋。乌巢粮尽根基拔,犹欲区区守冀州。
曹操领兵连夜行军,前面经过袁绍的别寨,寨中的士兵问是哪里的军马。曹操派人回答说:“蒋奇奉命前往乌巢护粮。”袁军看到是自家的旗号,便不再怀疑。经过好几处地方,曹操的军队都谎称是蒋奇的兵马,一路没有阻碍。等到了乌巢,四更天已经过去。曹操让军士们把干草堆在四周点火,众将校击鼓呐喊着直接冲入。当时淳于琼刚和众将喝完酒,醉卧在营帐中,听到鼓噪的声音,连忙跳起来问:“为什么这么喧闹?”话还没说完,就被挠钩拖翻在地。眭元进、赵睿运粮刚回来,看到屯粮处起火,急忙前来救援。曹军飞报曹操,说:“贼兵在后面,请分兵抵抗。”曹操大声喝道:“众将只管奋力向前,等贼兵到了背后,才能回头迎战!”于是众军将无不争先冲杀。一时间,火焰四起,浓烟弥漫天空。眭元进、赵睿二人驱兵来救,曹操勒马回战。二人抵挡不住,都被曹军杀死,粮草也全部被烧光。淳于琼被擒住带到曹操面前,曹操命令割去他的耳鼻和手指,绑在马上,放回袁绍的营寨以羞辱他。
袁绍在营帐中,听说正北方向火光满天,知道乌巢出事了,急忙出帐召集文武官员,商议派兵去救援。张合说:“我和高览一起去救援。”郭图说:“不行。曹军去劫粮,曹操必然亲自前往。曹操既然亲自出动,他的营寨必然空虚,我们可以出兵先攻打曹操的营寨,曹操听说后,必然会迅速回救。这就是孙膑的‘围魏救赵’之计。”张合说:“不是这样的。曹操足智多谋,外出时一定会在营中做好防备,以防不测。如今如果攻打曹操的营寨却攻不下来,淳于琼等人被擒,我们都会被俘虏。”郭图说:“曹操只顾着劫粮,怎么会留兵在营寨呢!”再三请求去劫曹营。袁绍于是派遣张合、高览率领五千军队,前往官渡攻打曹营,派遣蒋奇率领一万军队,前往救援乌巢。
曹操杀散淳于琼的部卒,夺了他们的衣甲和旗帜,伪装成淳于琼部下的败军回营寨,走到偏僻的小路上,正好遇到蒋奇的军马。蒋奇的军队询问,曹操的士兵称是乌巢的败军逃回来的。蒋奇于是没有怀疑,驱马直接过去。张辽、许褚突然出现,大喝:“蒋奇别跑!”蒋奇措手不及,被张辽斩杀于马下,蒋奇的士兵也全部被杀。曹操又派人在前面假报说:“蒋奇已经杀散乌巢的敌军了。”袁绍于是不再派人接应乌巢,只增兵前往官渡。
张合、高览攻打曹营,左边夏侯惇,右边曹仁,中路曹洪,一齐冲杀出来,三面攻击,袁军大败。等到接应的军队赶到,曹操又从背后杀来,四下包围掩杀。张合、高览夺路逃脱。袁绍收拢乌巢败残的军马回到营寨,看到淳于琼耳鼻都没有了,手脚也被砍掉。袁绍问:“怎么会失了乌巢?”败军报告说:“淳于琼喝醉睡着了,因此无法抵挡。”袁绍大怒,立刻将淳于琼斩首。郭图担心张合、高览回营寨后对证是非,便先在袁绍面前进谗言说:“张合、高览看到主公兵败,心中一定暗自高兴。”袁绍说:“为什么这么说?”郭图说:“二人向来有投降曹操的想法,如今派他们去攻打曹营,他们故意不肯用力,以致损失了士卒。”袁绍大怒,于是派使者紧急召回二人回营寨问罪。郭图先派人告诉二人说:“主公要杀你们了。”等到袁绍的使者到达,高览问:“主公叫我们回去做什么?”使者说:“不知道什么原因。”高览于是拔剑斩杀使者,张合大惊。高览说:“袁绍听信谗言,必然会被曹操擒获。我们怎么能坐以待毙呢?不如去投奔曹操。”张合说:“我也早就有这个想法了。”于是二人率领本部兵马,前往曹操的营寨投降。夏侯惇说:“张合、高览二人前来投降,不知道是真是假。”曹操说:“我以恩情对待他们,即使他们有二心,也会改变的。”于是打开营门让二人进入。二人放下武器,脱去铠甲,拜倒在地。曹操说:“要是袁绍肯听从二位将军的建议,不至于失败。如今二位将军肯来投奔,就像微子离开殷商,韩信归附汉朝一样。”于是封张合为偏将军、都亭侯,高览为偏将军、东莱侯。二人非常高兴。
袁绍失去了许攸,又失去了张合、高览,还丢了乌巢的粮草,军心惶惶。许攸又劝曹操赶紧进兵,张合、高览请求担任先锋,曹操同意了。立即命令张合、高览领兵去劫袁绍的营寨。当夜三更时分,曹操出兵分三路劫寨。混战到天亮,各自收兵,袁绍的军队折损了大半。荀攸献计说:“如今可以扬言调拨人马,一路攻打酸枣,进攻邺郡;一路攻打黎阳,截断袁军的归路。袁绍听到这个消息,必然会惊慌,分兵抵抗我们,我们趁他的军队调动时攻击他,袁绍就可以被打败了。”曹操采用了这个计策,让大小三军在四处扬言。袁绍的军队听到这个消息,到营寨中报告说:“曹操分兵两路:一路攻打邺郡,一路攻打黎阳。”袁绍大惊,急忙派遣袁谭分兵五万救援邺郡,辛明分兵五万救援黎阳,连夜出发。曹操探知袁绍的军队调动,便分大队军马,八路齐出,直冲袁绍的营寨。袁军都没有斗志,四散奔逃,于是全面溃败。袁绍来不及披甲,穿着单衣、戴着头巾上马,幼子袁尚跟在后面。张辽、许褚、徐晃、于禁四员将领,领兵追赶袁绍。袁绍急忙渡河,把图书、车仗、金帛全部丢弃,只带着随行的八百多骑兵逃走。曹操的军队追赶不及,缴获了袁绍遗留下的所有东西。此战共杀死袁军八万多人,血流满沟,溺水而死的人不计其数。曹操大获全胜,把所得的金宝绸缎赏赐给将士。在图书中搜出一束书信,都是许都以及军中一些人和袁绍暗中通信的信件。左右的人说:“可以逐一核对姓名,把这些人抓起来杀掉。”曹操说:“当袁绍强大的时候,我自己都不能自保,何况其他人呢?”于是下令把这些信件全部烧毁,不再追究。
袁绍兵败逃亡,沮授因为被囚禁,匆忙间没能逃脱,被曹军抓获,带到曹操面前。曹操向来和沮授相识。沮授见到曹操,大声喊道:“我绝不投降!”曹操说:“本初没有谋略,不采纳你的建议,你为何还如此执迷不悟呢?我要是早得到你,天下就不用担心了。”于是优厚地对待他,把他留在军中。沮授却在营中偷马,想要回到袁绍那里。曹操大怒,就把他杀了。沮授至死神色不变,曹操感叹道:“我误杀了忠义之士啊!”下令用厚礼殡殓,在黄河渡口为他建坟安葬,在墓上题字:“忠烈沮君之墓”。后人有诗称赞道:
河北多名士,忠贞推沮君:凝眸知阵法,仰面识天文;至死心如铁,临危气似云。曹公钦义烈,特与建孤坟。
曹操下令攻打冀州。正是:势弱只因多算胜,兵强却为寡谋亡。不知道胜负如何,且看下文分解。