汉尼拔(加斯帕德·尤利尔)的童年之初充满明媚与温馨,可爱的妹妹就像他的小尾巴,是他最爱的亲人。然而战争带走了一切,他的父亲、母亲还有他的家园。可是这仅仅是噩梦的开始,真正的毁了他一生的是妹妹的死——残忍的德军,吃了他的妹妹。 妹妹的死成了汉尼拔永远的梦魇,妹妹的脸庞和声 音常常在他的梦里出现。汉尼拔决定去寻找他最后的亲人,叔叔的妻子,他的婶婶,一个神秘的东方女人,紫夫人(巩俐)。紫夫人教会了汉尼拔搏击的技术,也让他见识到东方世界生吃文化的精髓。汉尼拔似乎找到了走出童年阴影的出口,他开始杀人,吃人,在血腥中得到灵魂的暂时安宁。 杀害妹妹的仇人,一个接一个凄惨的死去。汉尼拔和紫夫人之间也渐渐产生若有若无的情愫,可是此时,灵魂深陷泥沼的少年汉尼拔还留下什么来爱呢?1944年,八岁的汉尼拔·莱克特住在立陶宛的莱克特城堡。纳粹对苏联的入侵使波罗的海地区成为第二次世界大战最血腥的前线的一部分 。莱克特、他的妹妹米莎和他们的父母前往家族位于树林中的狩猎小屋,以躲避逼近的纳粹军队。三年后,纳粹终于被赶出了即将被苏联重新占领的国家。在撤退期间,他们摧毁了一辆苏联坦克那辆车停在莱克特家族的小屋寻找水源。爆炸杀死了除了莱克特和米莎之外的所有人。他们在小屋里幸存下来,直到由纳粹合作者弗拉迪斯·格鲁塔斯领导的五名前立陶宛民兵冲进并抢劫了小屋。在波罗的海严寒的冬天里,他们找不到其他食物,他们用威胁的目光看着莱克特和米莎。1952 年,立陶宛处于苏联统治之下,莱克特城堡被改建为孤儿院,汉尼拔也居住于此。在与一名恶霸进行暴力处理后,莱克特从孤儿院逃到巴黎,与他守寡的姑妈紫夫人住在一起,紫夫人教他包括剑术在内的日本武术。在法国期间,莱克特的学生生涯蒸蒸日上。他在青少年时期犯下第一起谋杀案,用武士刀斩首了一名侮辱他姨妈的当地屠夫。他涉嫌谋杀法国侦探帕斯卡·波皮尔 (Pascal Popil)探长 他也在战争中失去了家人。莱克特在接受采访时将屠夫的头放在车站前的大门上,这在一定程度上要归功于他姨妈的干预,莱克特逃脱了犯罪责任。莱克特成为法国最年轻的医学院录取者。他在巴黎工作,负责准备尸体。有一天,莱克特目睹一名被判刑的战犯接受硫喷妥钠注射,这让他回忆起自己战争罪行的细节。因此,为了回忆起那些对他妹妹的死负有责任的人的名字,莱克特给自己注射了这种溶液。他随后的闪回揭示了杀死米沙并吃人的人她也是。莱克特返回立陶宛寻找妹妹的遗体。他挖掘了他家人死去的小屋的废墟,发现米莎的遗体后,他为她举行了适当的葬礼。他还发现了杀害他妹妹的逃兵的身份牌。其中一位名叫恩里卡斯·多特利希 (Enrikas Dortlich) 的人看到他抵达该国并试图杀死他,但莱克特使他丧失了行动能力。埋葬米莎的遗体后,莱克特强迫多特利希透露他的帮派其他成员的下落,然后用马拉滑轮将多特利希斩首。多特里奇的血溅到了莱克特的脸上,他把它舔掉了。随后,莱克特参观了另一名士兵佩特拉斯·科尔纳斯 (Petras Kolnas) 在枫丹白露 ( Fontainebleau)的餐厅。他找到了他的小女儿,注意到米莎戴着她的手镯,并给了她科纳斯的狗牌。多特利希的谋杀案让该组织的其他成员保持警惕,并且由于与第一起谋杀案相似,莱克特再次受到波皮尔的怀疑。格鲁塔斯现在是一名性贩子,他派出该组织的第二名成员齐格马斯·米尔科(Zigmas Milko)去杀死他。莱克特杀死了米尔科,并将他淹死在防腐化学品中在他的实验室里。波皮尔随后试图劝阻他不要追捕该团伙。在与紫夫人的对峙中,她恳求他不要报复。他拒绝了,声称他向米莎做出了承诺。然后他在家中袭击格鲁塔斯,但格鲁塔斯被他的保镖救了。格鲁塔斯绑架了紫夫人并打电话给莱克特,用她作为诱饵。莱克特在背景中辨认出了他餐厅里科纳斯鸟儿的叫声。莱克特去了那里,通过威胁科尔纳斯的孩子来利用科尔纳斯的情绪。科纳斯透露了格鲁塔斯船的位置,但当科纳斯去拿莱克特的枪时,莱克特杀死了格鲁塔斯。莱克特前往船屋,发现格鲁塔斯正在袭击紫夫人。在最后的对峙中,格鲁塔斯声称莱克特还吃了士兵们喂给他的肉汤里的妹妹,他为了保守这一事实而杀死了他们。莱克特被这一揭露激怒了,他反复在格鲁塔斯身上刻下他姐姐名字的首字母,从而将格鲁塔斯掏空。紫夫人终于对他的行为感到不安,即使在他告诉她他爱她之后,她还是逃离了他。船屋被焚毁,莱克特,被认为已经死了,从树林里出现。然后他追捕该组织的最后一名成员格伦茨,前往美国之前,加拿大梅尔维尔。