袁绍不听田丰的话,田丰一再劝谏,袁绍反认为他扰乱军心,把他下了监狱,他向各州郡发出文书,声讨曹操。公元200年,袁绍集中了十万精兵,派沮授(沮音jū)为监军,从邺城出发进兵黎阳(今河南浚县)。他先派大将颜良渡过黄河,进攻白马(今河南滑县)。
曹操采纳了荀攸的意见,来个声东击西。袁绍听说曹操要在延津渡河,果然派大军来堵截。哪儿知道曹操已经亲自带领一支轻骑兵袭击白马。包围白马的袁军大将颜良没防备,被曹军杀得大败。颜良被杀,白马之围也解除了。
袁绍听到曹操救了白马,气得直跳脚。监军沮授劝袁绍把主力留在延津南面,分一部分兵力出击。但是袁绍心急火燎,不听沮授劝告,下令全军渡河追击曹军,并且派大将文丑率领五六千骑兵打先锋。这时候,曹操从白马向官渡撤退。听说袁军来追,就把六百名骑兵埋伏在延津南坡,叫兵士解下马鞍,让马在山坡下蹓跶,把武器盔甲丢得满地都是。
文丑的骑兵赶到南坡,看见这样子,认为曹军已经逃远了,叫兵士收拾那丢在地上的武器。曹操一声令下,六百名伏兵一齐冲杀出来。袁军来不及抵抗,被杀得七零八落。文丑也糊里糊涂地丢了脑袋。
两场仗打下来,袁绍一连损失了他手下的颜良、文丑两员大将,袁军将士打得垂头丧气。但是袁绍不肯罢休,一定要追击曹操。监军沮授说:“我们人尽管多,可没像曹军那么勇猛;曹军虽然勇猛,但是粮食没有我们多。所以我们还是坚守在这里,等曹军粮草完了,他们自然会退兵。”
袁绍又不听沮授劝告,命令将士继续进军,一直赶到官渡,才扎下营寨。曹操的人马也早已回到官渡,布置好阵势,坚守营垒。
袁绍看到曹军守住营垒,就吩咐兵士在曹营外面堆起土山,筑起高台,让兵士们在高台上居高临下向曹营射箭。