宛城の戦い
その後、張繡は劉表と同盟を結んで穣に拠点を移した。曹操が舞陰から許昌に帰還すると、曹操に臣従していた南陽郡及び章陵郡の豪族は反逆し、再び張繡に味方した。曹操は曹洪を派遣してこれを討伐させるも、破ることはできなかった。曹洪は引き返して南陽郡の葉に駐屯したが、劉表軍・張繡軍にしばしば侵害された。
197年11月、曹操は劉表・張繡を攻撃するため、自ら南征した。進軍の途中に淯水に臨むと、そこで亡くなった将士達の祠を弔った。その後、荊州南陽郡の湖陽を根拠地としていた劉表配下の鄧済を攻め、これを生け捕った。これにより湖陽を制圧すると、さらに舞陰も続けざまに攻略した。
198年3月、曹操は穣に軍を進めると、張繡を包囲した。198年5月、劉表は張繡を救援するため兵を派遣し、曹操軍の背後に付けた。このとき、袁紹が許昌を攻める素振りを見せたため、曹操は止む無く穣の包囲を諦めて軍を撤退させることとなったが、劉表と張繡の軍が迫っており、戻るに戻れない状況であった。なんとか安衆まで兵を移動させることが出来たが、そこで前後より挟撃を受けた。そのため、曹操は部下に命じて夜通しで要害の地に穴を掘らせ、地下道を作った。そこに輜重車両を全て隠し入れると、奇襲のため兵を伏せた。夜が明け、張繡と劉表が曹操軍の陣地へと向かって進撃すると、兵が全く見当たらなかったため逃走したと思い込み、全軍で突撃してきた。そこで曹操は伏せていた兵を放ち、騎兵を用いて敵を挟みうちにして散々に撃破した。こうして曹操は無事許昌へ引き返す事が出来たが、張繡は賈詡の進言により、再び曹操軍の背後を攻撃した。2度目の奇襲は予想していなかったため、曹操軍の後方は脆弱であり、簡単にやられてしまった。