初平三年(192年),青州黄巾军攻打兖州,斩杀兖州刺史刘岱。曹操出任兖州牧,一路打到济北,俘虏黄巾军三十多万人,获得人口一百多万。曹操从中挑选壮丁,组成了一支精兵,号称“青州兵”。
那时候,袁绍正与他的弟弟袁术争霸天下。曹操选择做袁绍的盟友,率领他的“青州兵”与袁绍联合作战,大败公孙瓒(zàn)麾下单经、刘备各部。初平四年(193年)春,曹操又从鄄(juàn)城出兵攻打匡亭,大败袁术的部将刘详。袁术前往援助刘详,同样被打败,只得退守封丘。接着,曹操又先后在封丘、襄邑、宁陵大败袁术,迫使袁术逃往九江。同年,曹操的父亲曹嵩在归途中被人劫财害命。曹操认定徐州牧陶谦就是他的杀父仇人,于是出兵血洗徐州,连续屠城,迫使陶谦退守郯(tán)城。
兴平元年(194年),曹操再次出兵攻打陶谦。大军在一路所过之地肆意杀戮,残破的城市里甚至连一个行人都看不到。恰在此时,陈宫联合陈留郡太守张邈,拥立吕布为新的兖州牧,宣誓反叛曹操。曹操只得撤军回攻濮阳,与吕布大战一百多天,直到双方军粮断绝才各自罢兵。同年九月,袁绍派遣使者慰问曹操,同时表示愿意收编曹操。
谋士程昱见曹操有意答应袁绍,便阻止他说:“我相信将军只是一时糊涂,要不然,您怎么会答应袁绍,去做他的部将呢?如今兖州虽然残破,却还有三座县城和将近一万的精兵。以将军您的神武,加上荀彧(yù)和我的辅佐,依然可以图谋王霸之业。事关重大,请将军慎重考虑!”曹操思前想后,最终拒绝袁绍,于次年整军再战,三次打败吕布,而后一举收复兖州。