开始构筑防御工事，以防备袁绍攻击许都。东汉建安五年（200年）正月，曹操出人意料地先进攻徐州的刘备。众将认为应先打袁绍，曹操说：“刘备是人中豪杰，现在不打，将来必有后患。袁绍没有大志向，反应迟缓，肯定不会行动的。”遂进军，以迅雷不及掩耳之势击破刘备于徐州，关羽被生擒投降，旋即还军官渡。不出曹操所料，袁绍迟疑不决，失去夹击曹操的良机。
声东击西.二月，袁绍率步兵十余万、骑兵一万，进军黎阳（今河南浚县东北），准备渡河，同时派遣颜良进攻白马（今河南滑县东北）。四月，曹操用荀攸之计