故事发生在一个小山村,一对夫妻因一场血案发现了一场阴谋,并与甄子丹饰演的杀手展开了斗智斗勇的对决。
清朝末年,刘金喜(甄子丹饰)是一个与两个儿子在偏远小镇安度日子的造纸工人,平静的生活即将被一个闯入的侦探给打破。
徐百九(金城武饰)为了调查两个强盗之死而来到小镇,看似意外死于刘金喜的自卫反应的两人,居然竟是武功高强的十大逃犯,一个手无寸铁的村民如何能够打死他们呢?对武术颇有研究的徐百九认定这绝不是意外,刘金喜必然是身怀绝技才能如此杀人于无形。随着追查的深入,徐百九发现他与72地煞——江湖中最为残暴邪恶、杀人不眨眼的组织联系紧密。而72地煞的教主,武艺则更是深不可测,无人能及。
徐百九越深入地研究刘金喜,就越觉得他也许并不是一个罪大恶极的人,徐百九开始相信“他要么是一个伪装高手,要么便是真的改邪归正了。”为了结束查案,徐百九不断地袭击刘金喜,试图逼他用武功来反抗,但每每都不如愿。刘金喜在此过程中严重受伤,迫使徐百九对他的怀疑有所动摇。正当所有的证据都让徐百九的推论显得荒唐时,刘金喜便是唐龙的确凿情报传来,他便是72地煞的二当家。昔日嗜血如麻的高手唐龙,有一天忽然从他的罪恶中清醒过来,决定以新的身份开始不一样的生活。
关于唐龙下落的消息很快传到教主那里,不能接受唐龙背叛的他,威胁唐龙回归组织,否则便要对所有的村落实行屠城。与此同时,徐百九正领着一对精兵前来将刘金喜捉拿归案。这三股势不可挡的人马聚集于小镇,不可避免的战斗一触即发。
自赎的道路染满了鲜血,唐龙的命运落在了挣扎于情与法的徐百九手里。