公元200年,袁绍统领十万大军集结在官渡北面的阳武,准备发动大规模进攻。一场大战在即,双方连续对峙了三个月,加紧战事准备。尽管曹操起初获得了几次小规模的作战胜利,但是面对强大的袁军他仍然心有余而力不足。当时曹操军队人数少,军粮又很缺乏,战争如果旷日持久地僵持下去,对曹军非常不利。
当时,袁绍加紧军粮筹备和运输,谋士许攸建议派遣轻骑抄袭曹军空虚的后方,可以速战速决。但是袁绍却置之不理,许攸大失所望,一气之下便投奔曹操来了。曹操听说许攸前来投靠,高兴得连鞋子都没来得及穿,就跑出去迎接。许攸建议曹操率领轻兵偷袭袁绍的军粮重镇乌巢,可以使袁军不战自败。
曹操喜出望外,当晚就留下曹洪、荀攸防守官渡大营,亲自率领精锐步骑兵五千人,打着袁军旗号,从小路奔向乌巢。曹军到达乌巢后,把袁军的粮囤团团围住,放起火来。袁绍听说曹操进攻乌巢粮囤,盲目地认为这是攻占官渡的好机会。他命令大将张郃、高览率兵攻打曹操官渡大营。但是,曹军官渡阵地坚固,战士死守,袁军攻打不下。另一方面,曹操指挥将士拼死战斗,击溃了袁军的增援部队,攻下了乌巢粮囤,把袁军的粮草烧得干干净净!袁军粮囤被烧,军心动摇,一下子全都溃散。曹军乘势出击,取得了官渡之战的胜利。