故事发生在三十年代的中国,日军的侵略让这片广袤的土地伤痕累累。张寄生(胡杏儿 饰)本是一位平凡的女子,和丈夫周细鸡(萧正楠 饰)新婚燕尔正准备享受幸福的生活。哪知道有朝一日,她竟然眼睁睁的看着亲人和爱人死在了敌人的手中,自己虽然偷生但惨遭侮辱。失去了一切生无可恋的张寄生想到了自我了断,却被游击队队长江尚红(黎耀祥 饰)救下。
在如此动乱的年代,张寄生和江尚红之间产生了真挚的感情,可是张寄生无法忘记仇恨,江尚红更是有着一段灰暗的过去,这段感情对于他们两人来说有着无法承受的重量。在江尚红的推荐下,张寄生加入了共产党,化身粤剧花旦“水芙蓉”,暗中套取敌方情报,立下了屡屡战功。。马丁(伊利亚·伍德 Elijah Wood 饰)为了追寻偶像逻辑数学家亚瑟(约翰·赫特 John Hurt 饰)的足迹,来到牛津大学深造。他发现,寄宿的房东伊格莱顿太太(安娜·玛西 Anna Massey 饰)仿佛跟亚瑟交往甚密,而她的养女贝丝(朱丽·考克斯 Julie Cox 饰)却总是故弄玄虚。后来,马丁结识了壁球伙伴洛娜(蕾欧诺·瓦特林 Leonor Watling 饰),两人堕入爱河……
亚瑟演讲时,马丁作为唯一的提问者,引起了他的注意。后来,二人在房东家不期而遇,发现伊格莱顿太太被人谋杀。现场唯一的线索是一个圆圈。二人被警方带走协助调查。此后又有一些人离奇地死去,而且他们的死因似乎还暗含着某个数学定律……。