198年,为扩大势力,曹操听从谋士荀攸的建议决定攻打吕布。吕布原是并州刺史丁原的部下,他力大无比,善于射箭骑马,十分骁勇。受到董卓收买后,他先杀了丁原,投靠了董卓。后来,他又受司徒王允怂恿,杀死了义父董卓,势力渐渐增强。
吕布听说曹操要来进攻后,决定以逸待劳。这年十月,曹操攻下彭城,然后进军到下邳。吕布见状亲自率领部队迎击,结果与曹操交手屡战屡败,只好退守城池,不敢出战。
曹操给吕布写信,向他讲清楚利害关系。吕布非常害怕,打算弃城投降。吕布有一个叫陈宫的手下劝阻他说:“曹操远道而来,势必不能坚持很久。将军如果率领步兵、骑兵到城外驻扎,我率领剩下的军队守卫城池,如果曹操进攻将军,我就领兵从他们的背后进攻;如果曹军攻城,则将军在城外援救。这样,用不了一个月,曹军的军粮吃完,我们再大举进攻,就可以打败敌人。”
吕布认为他说得对,就准备留陈宫与高顺守城,自己率领骑兵切断曹军的运粮通道。
回家后,吕布的妻子听说此事,就对吕布说:“陈宫与高顺一向不和,将军一出城,万一他们俩闹起内讧,谁要是打开城门投降了曹操,将军以后在哪里立足呢?况且曹操对待陈宫,就像父母对待怀里的婴儿一样,陈宫还丢下曹操来归附我们;你待陈宫不如曹操待他那么好,就把全城交给他,把妻儿老小丢在这里,孤身一人率军远出。如果一旦发生变故,我哪里还能再做你的妻子呢?”吕布听了,又打消了原来的计划。
再说曹操挖掘壕沟包围下邳城,过了很久也没能攻下,眼见士兵疲惫不堪,曹操打算撤军。
谋士荀攸、郭嘉闻听后,就劝曹操乘吕布锐气还没有恢复,陈宫的策略还没有决定,迅速发动猛攻,一举消灭吕布。
曹操认为说得对,就命令曹军开凿沟渠,引来沂水、泗水灌城。
一天,吕布的部将侯成丢失了他的宝马,幸好不久后又找了回来,将领们一起送礼向他道贺。侯成把礼物里的酒肉分出一份,献给吕布。谁知吕布却大怒,斥责侯成违反戒酒令,预谋算计自己。对此侯成又气又怕,不久就率部下捉住陈宫、高顺等人向曹操投降。吕布听到消息悔恨不已,自知到了山穷水尽的地步,于是他登上白门楼,命令手下砍下自己的脑袋,然后投降曹操。手下们不忍心下手,吕布就自己下楼向曹操投降。
尽管曹操很仰慕吕布的才能想使用他,但是又怕吕布日后背叛他,自己落得丁原和董卓一样的下场,于是就下令处死了吕布。