故事发生在1933年的英国,声名远扬的大侦探波洛(约翰·马尔科维奇 John Malkovich 饰)收到了一封匿名信件,寄信者在信件里预言了三场谋杀,并且给出了线索。虽然波洛报了警,但警方并没有太重视这封匿名信。果不其然,凶杀案发生了,名字以“A”和“B”开头的两位被害人均被以信件中所描述的方式杀死。 波洛明白自己必须开始和时间赛跑,去拯救唯一的那一位名字以“C”开头的幸存者。之后,波洛又陆续收到了几封内容相似的匿名信,可是当他着手调查这一切事件背后的真相时,却屡屡遭到阻拦,只有克罗姆警探(鲁伯特·格林特 Rupert Grint 饰)坚定的站在波洛侦探这一边。。1998年9月19日,德国人奥立弗•哈特温(Thomas Kretschmann 托马斯•科瑞其曼 饰)在互联网上发布通告,寻找一位愿意被其吃掉的志愿者。不久,一个名叫西蒙(Thomas Huber 托马斯•胡伯 饰)的男子应邀来到奥立弗的住处,从此在公众的视野前消失。当人们意识到事态的严重性并报警时,最终发现西蒙已经变成了奥立弗的盘中餐。这起事件震惊全国,很快成为全世界竞相刊登的头条新闻。
多年后,心理系研究生凯蒂•阿姆斯特朗(Keri Russell 饰)研究并撰写关于奥立弗的论文,并因此远赴德国,渴望揭示其行为背后的秘密……。