于禁,字文则,是泰山郡钜平县的人。黄巾军起义的时候,鲍信召集了一群人,于禁就跟着他一起干。后来,曹操接管了兖州,于禁和他的同伴们一起去投奔曹操,当了都伯,隶属于将军王朗。王朗觉得于禁很不一般,就推荐说他有能力当大将军。曹操召见了于禁,和他聊了聊,觉得这人不错,就任命他为军司马,让他带着兵去徐州攻打广戚,结果拿下来了,于禁就被提升为陷阵都尉。
接着,于禁跟着曹操去濮阳打吕布。他在城南单独打败了吕布的两个营,又带着部队在须昌打败了高雅。他还跟着曹操去攻打寿张、定陶、离狐,在雍丘围攻张超,这些地方都被他们拿下来了。后来,他又跟着曹操去征讨黄巾军的刘辟、黄邵等人,驻扎在版梁。黄邵他们趁夜偷袭曹操的营寨,于禁带着手下奋勇作战,把黄邵他们打得大败,斩杀了黄邵等人,收降了他们的全部人马。因为这些战功,于禁被提升为平虏校尉。
于禁又跟着曹操去攻打桥蕤,在苦县斩杀了桥蕤等四名敌将。他们到了宛城,张绣投降了。但张绣后来又反叛了,曹操和他作战,结果吃了败仗,军队溃败,退到了舞阴。当时军队一片混乱,大家都各自找曹操去了。只有于禁带着他手下的几百人,一边作战一边撤退,虽然有死伤,但大家都没有离散。敌人追得稍微慢了一点,于禁就慢慢地整顿队伍,敲着鼓撤退了。
于禁还没回到曹操那里,路上看到十多个受伤的人光着身子在逃跑。他问他们怎么回事,这些人说:“被青州兵抢劫了。”原来,当初黄巾军投降后,被编入了青州兵,曹操对他们比较宽容,所以他们就趁机抢劫。于禁非常生气,对手下说:“青州兵也是曹操的人,怎么能干这种事?”于是就去讨伐青州兵,还数落他们的罪状。青州兵赶紧跑到曹操那里去告状。
于禁回到营地后,先安排人修筑营垒,没有马上去见曹操。有人对他说:“青州兵已经告你了,你应该赶快去见曹操,把事情说清楚。”于禁说:“现在敌人还在后面追,说不定什么时候就追上来了。我们不先做好准备,怎么对付敌人?而且曹操很聪明,诬告能有什么用?”于禁慢慢地安排好营垒后,才去见曹操,把事情的经过详细地说了一遍。曹操听了非常高兴,对他说:“在淯水那次失败的时候,我非常着急。你在混乱中能够整顿队伍,讨伐抢劫的士兵,坚守营垒,这种坚定不移的气节,即使是古代的名将,也比不上你啊!”于是,曹操记录了于禁前后的功劳,封他为益寿亭侯。
后来,于禁又跟着曹操去攻打张绣,在穰县捉住了张绣。在下邳捉住了吕布。他还和史涣、曹仁一起去射犬攻打眭固,打败并斩杀了眭固。
曹操刚开始去攻打袁绍的时候,袁绍的兵力非常强大。于禁主动请求当先锋。曹操觉得他很有勇气,就派了两千名步兵,让于禁带着去延津抵挡袁绍的进攻,而曹操自己则带着主力回到了官渡。后来刘备在徐州反叛,曹操就去东边征讨刘备。袁绍趁机进攻于禁,但于禁坚守阵地,袁绍没能攻下来。接着,于禁又和乐进等人带着五千名步兵和骑兵,去攻打袁绍的其他营地。
他们沿着黄河从延津往西南方向进攻,一直打到汲县和获嘉这两个县,烧毁了三十多个敌人的据点,杀了好几千人,俘虏了好几千人,还让袁绍的将领何茂、王摩等二十多个人投降了。曹操又派于禁带着部队去原武驻扎,在杜氏津打败了袁绍的另一个营地。因为这些战功,于禁被提升为裨将军。后来他跟着曹操回到官渡。曹操和袁绍的军队对峙,两边都修了土山对射。袁绍的士兵往曹营射箭,射死了很多人,曹军都很害怕。于禁负责防守土山,他奋勇作战,越战越勇。
袁绍被打败后,于禁又被提升为偏将军。冀州平定后,昌豨又反叛了,曹操派于禁去征讨。于禁急攻昌豨。昌豨和于禁是老朋友,就向于禁投降了。其他将领都认为昌豨已经投降了,应该把他送到曹操那里去。但于禁说:“你们不知道曹操的军令吗?被包围后才投降的人,是不被赦免的。遵守法律和命令,这是对上级的尊重。昌豨虽然是我的老朋友,但我不能违反原则。”于是,于禁亲自和昌豨诀别,流着眼泪把他给杀了。
当时曹操在淳于,听到这个消息后感叹说:“昌豨投降不来找我,却去找于禁,这难道不是命吗?”因此更加看重于禁了。不过,裴松之认为,虽然按照法律,被包围后投降的人应该不被赦免,但把昌豨送到曹操那里去,并不算违反命令。于禁没有因为老朋友的关系而心软,却随意杀人,违背了大家的意见,所以最后他被俘虏,死后还被追加了恶谥,这是他自找的。
平定东海后,于禁被任命为虎威将军。后来,他和臧霸等人一起去攻打梅成,张辽和张合等人去讨伐陈兰。于禁到了之后,梅成带着三千多人投降了。但梅成投降后又反叛了,他的部下都投奔了陈兰。张辽等人和陈兰对峙,军粮越来越少。于禁负责运输粮食,一趟趟地送过去。最后,张辽斩杀了陈兰和梅成。因为这些功劳,于禁的封地增加了二百户,加上之前的总共有一千二百户。
当时,于禁和张辽、乐进、张合、徐晃都是有名的将领。曹操每次出征,他们都轮流当先锋,回来的时候殿后。于禁治军很严,缴获了敌人的财物后,他从来不私藏,所以得到的赏赐特别多。但他用法律管束部下,所以不太受士兵们的欢迎。曹操一直不喜欢朱灵,想夺了他的兵权。因为于禁很有威严,曹操就派他带着几十个骑兵,带着命令书,直接到朱灵的营地去接管他的军队。朱灵和他的部下都不敢反抗,曹操就让朱灵当于禁的部下督,大家都很害怕于禁,他的威严就是这样。后来,于禁被提升为左将军,给了他节钺,还分给他五百户封地,封他的一个儿子为列侯。
建安二十四年,曹操在长安,派曹仁去樊城攻打关羽,又派于禁去帮助曹仁。那年秋天,下起了大雨,汉水泛滥,平地上水深好几丈,于禁等七军都被淹没了。于禁和其他将领登上高地,看着洪水无处可躲。关羽乘着大船来攻打于禁等人,于禁就投降了,只有庞德宁死不屈。
曹操听到这个消息后,非常难过,感叹了很久,说:“我了解于禁三十年了,没想到他在危难的时候,反而不如庞德有气节啊!”后来,孙权抓住了关羽,收编了他的部队,于禁也在孙权那里。
曹丕(文帝)即位后,孙权表示臣服,曹丕就将于禁送了回来。曹丕接见于禁时,看到他头发花白,面容憔悴,哭着磕头请罪。曹丕安慰他,提到了古代的荀林父和孟明视的故事,说他们打了败仗,但国家没有抛弃他们,还让他们官复原职,后来他们都立了大功。曹丕还说:“樊城之战,是因为洪水暴发,不是作战的过错。你们的官职都恢复了。”于是任命于禁为安远将军,准备派他出使孙权那里。出发前,曹丕先让他去邺城拜谒曹操的陵墓。
曹丕让人在陵墓的房屋里画了关羽作战胜利、庞德愤怒不屈、于禁投降的画面。于禁看到这些画后,感到非常羞愧和愤怒,结果生了病,很快就去世了。他的儿子于圭继承了他的爵位,被封为益寿亭侯。于禁被追封为厉侯。