如此,两军对峙,相持数日,曹军兵少粮缺,士卒疲乏。曹操曾想放弃官渡,退守许昌。谋士荀彧写信劝说:“现在军需供应虽然很少,但形势还是没有楚汉之争时在荥阳、成皋作战时严峻。那个时候刘邦、项羽都想首先退军,先退的士气定会减弱。曹公以袁绍十分之一的兵士,占据把守一地,扼制住敌方的咽喉要道使其不能够出入,已经有半年的时间了。现在形势将会出现转折变化,这正是施展计谋的时机,不可以失去啊。”于是,曹操决心加强防守,苦撑危局,静观其变,以寻求战机。
果然,袁军内部不久后出现矛盾。谋士许攸给袁绍献计,让他趁许都空虚,派一队人马绕过官渡,偷袭许都。袁绍不听,固执地说:“我应当首先把曹军攻下!”偏巧,许攸家人犯法,已被收监。许攸闻讯,顿时大怒,连夜投奔了曹操。曹操刚脱了靴子想睡,听说许攸来见,喜不自胜,跳足出迎。一见面,曹操抚掌笑说:“你来了,我战胜袁绍大有希望了。”
许攸向曹操提供了袁军屯粮乌巢防备不严的情报,建议曹操出奇兵偷袭,烧其粮草。如果那样做,“用不了三天的时间,袁绍必定会大败”。曹操闻之甚喜,便马上采取行动。他留曹洪、荀攸守大营,自己亲率精锐步骑五千人,打着袁军的旗帜,夜晚悄悄从小路赶到乌巢。半夜抵达后,曹军围住粮囤,四面放火,把袁军粮草烧为乌有。
粮草被烧的消息传到前线,袁军尽皆慌乱不堪,军心大乱。大将张部、高览临阵倒戈,率部投降了曹操。曹军乘势猛攻,分线出击,袁军四处逃散。袁绍和他的儿子袁谭连盔甲都来不及穿戴,便率领八百骑兵仓皇逃到河北。
官渡战败后,袁绍势力尚存,不料他本人却对胜败耿耿于怀,终于积郁成疾,于建安七年(202年)呕血而死。而实际上,袁氏集团仍有很强的实力。袁绍的小儿子袁尚占据邺城,统领袁绍旧部,袁谭、袁熙等仍然控制着黄河以北的大部分地区。
(三)巧平袁氏兄弟
袁绍的几个儿子不能同心协力,他们各自扩充实力。袁绍在世时,他们为了争夺嗣位,各自扩充实力,培植党羽,明争暗斗。袁绍死后,审配假传袁绍遗命,奉袁尚嗣位,袁谭自然心有怨言。袁尚也很疑忌他大哥,拨给袁谭的兵力也就更少了。袁尚又让逢纪跟从袁谭,名为辅佐,实则监视。袁谭屡次要求增兵,袁尚与审配都不予理睬。愤怒之下,袁谭便杀了逢纪,如此一来,袁氏兄弟之间的矛盾,便迅速尖锐激化起来。
官渡之战后,曹操让军队先休整了一段时日,然后利用袁尚、袁谭之间矛盾冲突加剧的有利时机,渡过黄河,北上征伐。建安七年(202年)九月,曹军攻打屯兵黎阳的袁谭,袁谭无力抵抗,情急无奈,只好向袁尚告急求援。袁尚欲分兵助兄,又怕袁谭借兵不还,如果坐视不救,又怕黎阳有失于己不利,只好让审配据守邺城,自己亲率大军救援黎阳。次年二月,两军大战于黎阳城下,结果,袁谭、袁尚、袁熙、高斡(袁绍外甥)全部大败,放弃黎阳,退保邺城。这时曹操已占据了冀州的重要门户黎阳,为进一步消灭袁氏集团创造了有利的条件。
屡战屡捷之下,曹军诸将都想继续乘胜追击,一举攻下邺城。就在将士们踌躇满志之时,郭嘉却出人意料地提出了一个全新的作战方案,那就是停止继续进攻,转而南征刘表。将士们对这一策略都感到迷惑不解,为什么不采取急攻策略,一举攻下邺城呢,免得以后夜长梦多,以防袁氏兄弟变得难以对付。
郭嘉跟随曹操打败了袁绍,在袁绍死后,又跟随曹操到黎阳讨伐袁谭、袁尚,接连几次战斗都打了胜仗。就在将领们想乘胜追击进攻袁氏兄弟时,郭嘉却很有把握地解释说:“袁绍生前疼爱这两个儿子,而在死前又没有立嫡子。袁氏兄弟有郭图、逢纪二人作为谋臣,一定会互相争斗,互相周旋离间。若急速进攻,他们就会互相依恃;缓一缓之后,袁氏兄弟就会产生争斗之心。不如向南进军荆州,装出征讨刘表的样子,用以等待袁氏兄弟的变化,等到他们内部发生变乱后再进攻他们,便可以一举平定冀州。”曹操对郭嘉提出的消灭二袁的谋略连连称赞,于是曹军转而南征。当大军来到西平时,袁谭、袁尚两兄弟果然争夺起冀州来了。
事实证明,这的确是一个消灭袁氏兄弟最有效也是事半功倍的方案。然而在当时形势下,乘胜进攻并消灭二袁,似乎也是自然而然的事,而且也大概也会取得成功。但是,袁氏兄弟占据的邺城在经过袁绍的多年经营之后,有了一定的稳固性,自然不可能被轻易攻破,更何况袁军还保有相当的实力。在这种情况下进行强攻硬拼,必然要付出很大代价,所以这并不是高明的作战方法。
听了郭嘉的解析,众人连声称是,曹操也欣然采纳。建安八年(203年)八月,曹操下令南征刘表。这时,荆州的刘表刚稳定了长江以南的长沙、零陵、桂阳三郡,正密切注视着中原局势的变化。曹军挥师南下,对刘表造成了强大的威慑,使他不敢轻易北上攻掠曹军辖地。这就足够了!因为曹操所要的,便是一个给袁氏兄弟想要看到的而实际上却是佯攻的效果。曹操退军后,留下贾信守黎阳,曹洪守官渡,自己回许昌;接着再南下,以装出进攻刘表的姿态。他虽然挥师南下,却是一步三回头,时刻注意着二袁的动静。当曹军开到西平(今河南西平县西)时,便接到了袁谭派辛毗前来投降求救的消息。
郭嘉当时提出放弃进攻,待二袁火并,自相残杀,再一举两得的谋略,是建立在对袁氏政权内部矛盾深刻分析基础之上的,是非常高明的谋略。当时,二袁之间存有矛盾,如若急攻,二袁则共处灭亡之险境,必然会为免于灭亡而共同抗曹以求存;而如撤军,假装回军进攻刘表,二袁就没了外忧,内部矛盾上升,定会自相争斗。郭嘉这一谋略,真是一条绝妙的“动敌”之术。曹操于是在建安八年(203年)八月下令撤军,南征刘表。事态正如郭嘉所料,曹军南撤后,胆战心惊的袁谭、袁尚真是大喜过望,紧接着兄弟二人便开始了对冀州的争夺。袁谭以要追击曹军为借口,要袁尚给他的军队换些好的盔甲。袁尚不给,袁谭很生气,并在郭图、辛评的挑唆下,领兵攻打袁尚,结果大败而归。袁谭带领败军逃到平原(今山东平原县南),袁尚又领兵追踪而至,将平原团团围住,四面攻打。袁谭眼看邺城实难守住,又一筹莫展,只好听从郭图的建议,派辛评的弟弟辛毗向曹操请求投降和火速增援。
袁谭被打败,向曹操请降。曹操假装南征刘表,意在两袁。曹操见二袁果然火并,正如郭嘉所料,正中圈套,心中自然非常高兴,答应了袁谭的请求,出兵救援袁谭,袁尚退守邺城。曹军于204年八月破邺城,攻占邺城后,曹操转而挥戈北进,在南皮攻打袁谭,平定了冀州,时年十二月又转手杀袁谭,然后,曹操北上进击幽州的袁熙、袁尚。郭嘉的谋略一步步顺利实现。这样,曹军便能够制敌,借敌人之手削弱敌人的实力,从而坐收渔人之利,这实在是一条不战而屈人之兵的奇谋妙计。
郭嘉提出的巧破袁氏兄弟的计策,是一个最有效的事半功倍的制胜计谋。在当时形势下,曹、袁两军大战,袁军一再败退,趁此时机,乘胜进军,消灭袁氏兄弟,一般的指挥者都会这样做。然而,郭嘉却出人意料地提出撤军南下、佯攻刘表的计策。众人迷惑不解,郭嘉却看得深远,他分析袁氏兄弟还具有相当实力,如要硬攻,付出的代价是巨大的。与其直接进攻消灭,不如利用他们之间的矛盾,“坐山观虎斗”,以收渔人之利。事实确如郭嘉预料的那样,袁氏兄弟火并,曹操趁机消灭了他们。此计的高明之处就在于当敌人内部有矛盾,而矛盾又趋于激化时,没有急于攻击,而是静待它的发展变化。否则,会出现对方矛盾暂时缓和,联合起来共同对外的可能。故意后退一步,坐等对方矛盾激化,以至出现互相残杀的变化,这才是消灭对手的绝好机会。
曹操攻占冀州后,郭嘉提出建议,要曹操召见当地的知名人士并委任以为官吏。这一措施极大地笼络了青、冀、幽、并等地的名士,非常有利于巩固曹操在北方的统治,这可以说是一个极有见地的深谋远虑。曹操也因郭嘉在平定袁氏兄弟的斗争中的突出贡献而封郭嘉为淆阳亭侯。