建安三年公元一九八年,春季三月,曹操在許都打算再次攻打張繡,荀攸說:“張繡與劉表彼此依賴,力量強大,但張繡是外來的軍隊,完全仰賴劉表供給糧草,劉表無力長期供給,勢必會各奔前程,不如暫緩出軍,靜觀其變,誘導(dǎo)張繡前來歸服,如果進(jìn)軍急迫,他們必然會互相救援。”曹操沒有聽從,親自率領(lǐng)軍隊出征,謀士荀彧隨征。曹操直接進(jìn)圍張繡駐軍的穰城。
劉表再次派遣黃忠率部救援張繡,黃忠按時奔赴安眾,截斷曹軍的后路,配合張繡,夾擊曹操。
安眾原來是宛城的西鄉(xiāng),漢武帝元朔四年置縣,屬南陽郡,漢朝長沙定王之子劉丹的封邑。涅水經(jīng)過安眾境內(nèi),湍水經(jīng)過安眾縣城,在南邊匯合涅水,形勢一條主要河流。新莽居攝二年,安眾侯討伐王莽,兵敗而死,安眾城隨之而廢。光武中興以后,復(fù)設(shè)安眾。
夏季四月,曹操聞后路被劉軍截斷,只得解散了穰城的包圍,向許都撤退,張繡率軍在后追擊。謀士賈詡勸阻張繡說:“不能追擊,追則必敗。”張繡不聽,繼續(xù)進(jìn)兵,同時知會黃忠在安眾配合阻擊曹操。
五月,黃忠駐扎在安眾,分兵拒守險要,截斷曹軍的后路。張繡按照約定帶領(lǐng)追兵趕到安眾境內(nèi)。
曹操接到張繡和劉表聯(lián)兵合擊的探報,決定搶先打敗張繡,再乘勝擊潰劉表的援軍,闖出隘口。他給荀彧寫信說:我到了安眾一定可以打敗張繡,因為敵人阻擋我們回師,把我軍置于死地,所以我能料到可以獲勝。
曹操到達(dá)安眾以后,全軍前后受敵,于是他下令連夜開鑿險道,偽裝要向一邊逃跑,誘使張繡率領(lǐng)全部軍隊前來追擊,進(jìn)入險要地帶。曹操命步兵和騎兵前后夾擊,奮勇沖殺,把張繡部隊圍困起來。
黃忠聞報張繡陷進(jìn)重圍,形勢異常危急,立即率領(lǐng)主力救援張繡,殺開一條血路,使張繡所部脫離險境。曹軍乘機撤出了安眾界口,在隘外下寨。張繡黃忠兩軍會集安眾,準(zhǔn)備整軍再戰(zhàn)。賈詡登上城墻,向遠(yuǎn)方的曹營瞭望一陣,對張繡說:“趕緊再去追擊,再戰(zhàn)必勝。”張繡向他道歉說:“沒有聽從您的建議,因此落到這個地步,如今已經(jīng)大敗,怎么還要再去追擊?”黃忠一聽,立刻預(yù)料到出其不意攻其不備的用兵原則,他說:“兵勢變幻無常,現(xiàn)在曹軍情況已有轉(zhuǎn)變,請將軍立刻追擊,不要延誤戰(zhàn)機。”張繡茫然不解地問賈詡:“我用精兵去追擊退軍,而您說必敗,再用敗兵去追擊勝兵,而您說必勝,這是什么原因呢?”賈詡說:“這很容易明白,將軍雖然善于用兵,卻不是曹操的對手,曹操軍隊剛剛開始撤退,一定親自率軍斷后,所以料定將軍必敗。曹操攻打?qū)④姡葲]有失策的地方,又不是力量用盡,卻一下率軍撤退,那么他的后方一定發(fā)生了變故。現(xiàn)在他已經(jīng)擊敗了將軍的追兵,必然輕裝速進(jìn),而留下其他將領(lǐng)斷后,其他將領(lǐng)雖然勇猛卻不是將軍的對手,因此將軍雖然率領(lǐng)敗兵去追擊,也一定能夠獲勝。”張繡素來相信賈詡的話,于是收拾殘兵敗將,聯(lián)合黃忠,并力追擊曹軍。雙方一場激戰(zhàn),將敵軍打得七零八落,狼狽逃竄,大獲全勝。黃忠返回宛城,張繡留守穰城。