李典,字曼成,是山阳郡钜野县人。他的堂兄李乾,是个很有气魄的人,他召集了数千家宾客在乘氏这个地方。在初平年间,李乾带着这些人跟随曹操,在寿张打败了黄巾军,又跟着曹操去攻打袁术,还参加了征讨徐州的战役。后来吕布作乱,曹操派李乾回乘氏去安抚各县。吕布的别驾薛兰和治中李封想拉拢李乾一起叛变,但李乾坚决不答应,结果被他们杀害了。
曹操让李乾的儿子李整接管了李乾的部队,李整带着部队和其他将领一起打败了薛兰和李封。因为这次胜利,李整在平定兖州各县的战斗中立了功,逐渐升任为青州刺史。李整去世后,李典接替了他的职位,被任命为颍阴县令,后来又当上了中郎将,统领李整的部队。据《魏书》记载,李典从小就好学,不喜欢军事,他曾经跟着老师学习《春秋左氏传》,还广泛阅读各种书籍。曹操很欣赏他,就让他去管理地方政务。后来,李典又被调任为离狐县的太守。当时曹操和袁绍在官渡对峙,李典带着他的宗族和部队运送粮食和布匹来支援军队。袁绍被打败后,曹操任命李典为裨将军,驻扎在安民。
曹操在黎阳攻打谭和尚的时候,让李典和程昱用船运送军粮。这时,尚派魏郡太守高蕃带着部队驻扎在河边,切断了水路。曹操命令李典和程昱:“如果船过不去,就从陆路走。”李典和其他将领商量说:“高蕃的部队虽然人少,但他们依仗着水路,而且有些松懈,我们如果发起攻击,一定能打败他们。军队作战不能拘泥于内部的限制,只要对国家有利,就可以灵活处理。我们应该马上发起攻击。”程昱也同意这个看法。于是他们就渡过河去攻打高蕃,结果把高蕃打败了,水路也打通了。
刘表派刘备向北进攻,一直打到叶县。曹操派李典跟着夏侯惇去抵抗刘备。有一天,刘备突然烧了营地就撤退了。夏侯惇带着部队去追击刘备,李典说:“敌人无缘无故地撤退,我怀疑他们一定有埋伏。南边的道路很狭窄,草木又深,不能去追。”但夏侯惇没有听从李典的劝告,和于禁一起去追击刘备,李典则留下来守卫。结果夏侯惇他们果然中了刘备的埋伏,战斗很不顺利。李典赶去救援,刘备看到援军来了,就撤退了。
后来,李典跟着曹操围攻邺城,邺城平定后,他又和乐进一起在壶关围攻高干,在长广打败了管承。因为这些战功,李典被提升为捕虏将军,封为都亭侯。李典的宗族和部队有三千多家,都住在乘氏。李典自己请求把他们迁到魏郡去。曹操笑着说:“你是想学耿纯吗?”李典回答说:“我才能平庸,功劳又小,但受到的爵位和恩宠却太多了。我确实应该让我的族人都出来为国家效力。而且现在战争还没有结束,应该充实京郊地区,以便控制四方。我不是想学耿纯。”于是,李典带着一万三千多族人和部队迁到了邺城。曹操很赞赏他,提升他为破虏将军。
李典和张辽、乐进一起驻守合肥。孙权带着大军来围攻合肥。张辽想按照曹操的教导出战。乐进、李典和张辽平时关系都不太好,张辽担心他们不会听从命令。但李典却慷慨地说:“这是国家的大事,只要张辽的计策好,我怎么能因为私人恩怨而忘记国家的利益呢?”于是,李典带着部队和张辽一起打败了孙权。因为这次战功,李典的封地增加了百户,加上以前的共三百户。
李典喜欢学习,尊重有学问的人,从来不和其他将领争功劳。他对贤士大夫非常尊敬,总是谦虚谨慎,好像自己比别人差一样。军中的人都称赞他是一个德高望重的人。李典三十六岁就去世了,他的儿子李祯继承了他的职位。曹丕即位后,想起李典在合肥的战功,又给李祯增加了百户的封地,还赐给李典的一个儿子关内侯的爵位,封地百户。李典被追封为愍侯。