袁术得知曹操的军队已经到来,便命令大将桥蕤率领五万军队作为先锋。两军在寿春边界相遇。桥蕤首先出战,与夏侯惇交锋,但不过三回合,就被夏侯惇刺死。袁术的军队大败,仓皇逃回城中。突然,有报告称孙策发兵攻击寿春的西边,吕布的军队攻击东边,刘备、关羽、张飞则带领军队攻击南边,而曹操亲自率领的十七万大军则攻击北边。袁术大惊失色,急忙召集文武百官商议对策。杨大将建议说:“寿春地区近年来水旱灾害频发,百姓都缺乏粮食。现在又出动军队骚扰百姓,百姓心生怨恨,军队也难以抵挡。不如留下军队在寿春,不与敌军交战;等到敌军粮草耗尽,自然会生变。陛下可以率领御林军渡过淮河,一是可以到富饶的地方就食,二是可以暂避敌军的锋芒。”袁术采纳了杨大将的建议,留下李丰、乐就、梁刚、陈纪四人,分别率领十万军队坚守寿春;其余将领和士卒以及库藏的金玉宝贝,都尽数收拾起来,渡过淮河去了。
却说曹操的十七万大军每日消耗的粮食极为庞大,而各郡又遭遇荒旱,粮食接济不上。曹操催促军队速战速决,但李丰等人坚守寿春,闭门不出。曹操的军队与敌军相持了一个多月,粮食即将耗尽。于是,曹操向孙策借得粮米十万斛,但仍然不够分配。管粮官任峻的部下仓官王垕向曹操报告说:“军队人数众多,粮食却很少,我们该如何应对呢?”曹操说:“可以先用小斛来分发粮食,暂时缓解一下燃眉之急。”王垕担心地问:“如果士兵们抱怨,该怎么办?”曹操说:“我自有计策。”王垕只好按命令以小斛分散粮食。曹操暗中派人到各军营去探听士兵们的反应,果然听到士兵们都在抱怨,都说丞相欺骗了大家。于是,曹操秘密召见王垕说:“我想向你借一样东西,来平息士兵们的怨气,你千万不要吝惜。”王垕问:“丞相想借什么?”曹操说:“我想借你的头来向士兵们示众。”王垕大惊失色,说:“我实在是无罪的啊!”曹操说:“我也知道你是无辜的,但如果不杀你,军队就会发生变故。你死后,你的妻子儿女我会自己抚养,你不必担心。”王垕还想再说什么,但曹操已经叫来刀斧手,将他推出门外,一刀斩首,然后将他的头悬挂在高竿上,并贴出告示说:“王垕故意用小斛分发粮食,盗窃官粮,现已按军法处决。”这样一来,士兵们的怨气才逐渐平息。
第二天,曹操传令给各营将领:“如果三天内不能合力破城,所有人都将被斩首!”曹操亲自到城下督战,指挥士兵们搬运土石,填平壕沟,堵塞堑壕。城上的箭矢和石头如雨点般落下,有两名裨将因为畏惧而退回,曹操抽出宝剑亲自在城下将他们斩首。然后,他自己下马,亲自参与填坑的工作。在曹操的激励下,大小将士都奋勇向前,军威大振。城上的守军无法抵挡,曹兵争先上城,斩断关隘,打开城门,大队人马涌入城中。李丰、陈纪、乐就、梁刚都被生擒,曹操命令将他们全部在市集上斩首示众。随后,曹操下令焚烧了伪造的宫室殿宇以及一切违禁物品,寿春城中的财物被洗劫一空。曹操与众人商议后,决定进军渡过淮河,追赶袁术。然而,荀彧劝阻道:“近年来荒旱连连,粮食匮乏,如果再进兵,只会使军队疲惫,百姓受损,未必有利。不如暂且返回许都,等到来年春天麦子成熟,军粮充足,再图谋进攻。”曹操犹豫不决。就在这时,突然有快马来报,说张绣依托刘表,再次猖獗起来,南阳、江陵等县也再次反叛。曹洪率军抵抗,但连输数阵,现在特来告急。曹操于是立即给孙策写信,命令他跨江布阵,作为刘表的疑兵,使其不敢轻举妄动。曹操自己则决定立即班师回朝,另议征讨张绣之事。临行前,曹操命令刘备仍然屯兵小沛,与吕布结为兄弟,互相救助,不再相互侵犯。吕布则领兵返回徐州。曹操私下对刘备说:“我让你屯兵小沛,其实是‘掘坑待虎’之计。你只需与陈珪父子商议,不要失策。我会作为你的外援。”说完后,两人便分别离开了。
曹操率领军队回到许都,有人报告说段煨杀了李傕,伍习杀了郭汜,并将他们的首级献上。段煨还活捉了李傕全族老小二百多人,押送到许都。曹操下令将这些人在各城门处斩首示众,号令天下,百姓们无不拍手称快。天子升殿,召集文武百官,举行太平筵宴,并封段煨为荡寇将军,伍习为殄虏将军,各自领兵镇守长安。二人谢恩后离去。曹操随即上奏称张绣作乱,应当出兵讨伐。天子亲自为曹操送行,此时正是建安三年夏四月。曹操留下荀彧在许都调遣兵将,自己统领大军进发。行军途中,曹操看到沿途的麦子已经成熟,但因为战争的原因,百姓们都逃避在外,不敢收割麦子。曹操于是派人告知远近的村民和各地守境的官吏说:“我奉天子之命,出兵讨伐叛逆,为百姓除害。现在是麦子成熟的季节,我因为不得已而举兵,所以命令大小将校,凡是经过麦田的,如果有践踏者,一律斩首。军法严明,希望百姓们不要惊疑。”百姓们听到这个消息后,无不欢喜称颂,纷纷在道路两旁拜见曹操的军队。当曹操的军队经过麦田时,士兵们都下马用手扶着麦子,传递着走过去,不敢践踏。然而,突然田中飞起一只鸠鸟,曹操的马受到惊吓,窜入麦田中,践踏了一大块麦田。曹操立即召来行军主簿,商议自己践踏麦田的罪行。主簿说:“丞相怎么能议罪呢?”曹操说:“我自己制定的法律,自己却违反了,怎么能够服众呢?”说完,就拔出佩剑想要自刎。众人急忙上前阻止。郭嘉说:“按照古代《春秋》的义理,法律不适用于尊贵的人。丞相统领大军,怎么能自我伤害呢?”曹操沉思了很久,然后说:“既然《春秋》上有‘法不加于尊’的说法,我就暂且免去一死。”于是,他用自己的剑割下一缕头发,扔在地上说:“我就用这缕头发代替首级吧。”然后派人将头发传给全军看,并说:“我践踏了麦田,本来应该斩首示众,现在就用这缕头发代替。”全军将士看到这一幕后,无不肃然起敬,严格遵守军令。后来有人写诗评论这件事说:“十万大军十万心,一人号令众难禁。拔刀割发权为首,方见曹瞒诈术深。”
当张绣得知曹操引兵前来时,他急忙发信给刘表,请求他作为后援。同时,张绣与雷叙、张先两位将领率领军队出城迎战。两军对阵,张绣骑马出阵,指着曹操骂道:“你是个假仁假义、没有廉耻的人,和禽兽有何区别!”曹操大怒,命令许褚出战。张绣则令张先与许褚交锋。只打了三个回合,许褚就斩杀了张先于马下,张绣的军队大败。曹操率领军队追赶至南阳城下。张绣逃入城中,紧闭城门不出。曹操围城攻打,但见城壕宽阔,水势又深,难以接近城池。于是,他命令士兵们运来泥土填平壕沟;又用土布袋和柴薪草把混合在一起,在城边堆成梯凳;还设置了云梯来窥探城中的情况。曹操亲自骑马绕城观察了三天。在这三天里,曹操命令士兵在西门的城角上堆积了大量的柴薪。然后,他召集了众将,准备从那里攻上城墙。城中的贾诩看到这种情景,便对张绣说:“我已经明白了曹操的意图。现在我们可以利用他的计策,反其道而行之。”这正应验了那句老话:“强中自有强中手,用诈还逢识诈人。”至于贾诩和张绣将如何实施他们的计策,且听下文分解。