1906年。清末。
正是清廷疯狂暗杀“革命党”的黑暗年代。
10月15日。
革命领袖孙中山决定冒险赴港,名为探望母亲,实则与十三省革命代表见面会谈。这是清廷“刺杀孙贼”的大好时机,将军白孝国(胡军 饰)买通香港警察,在全港织起了一张“刺孙”的天罗地网。而“中国日报”社长陈少白(梁家辉 饰)作为革命党人,必须在24小时内完成保卫孙中山的任务。
大商人李玉堂(王学圻 饰)是陈少白老友,多年来一直在暗中出资支持陈的革命工作。10月15日前夕,李玉堂正在为17岁的独子李重光(王柏杰 饰)考上大学大宴宾客,陈少白寻上门来,希望其能出资支援——当李玉堂随后发现儿子重光竟然也受革命思想影响时,不仅不愿再度投资,更欲与陈决裂。
然而,就在此时,陈少白的突然被捕失踪,以及香港各革命据点的连续遭袭,令李玉堂无法袖手旁观,他被迫担负起“保孙”的指挥工作,并花钱找寻民间力量,来替补遭到毁坏的保镖队伍。
香港。卧虎藏龙之地。
曾是贵公子,如今沦为“乞丐”的刘郁白(黎明 饰);对李家父子忠心耿耿的“车夫”阿四(谢霆锋 饰);因父亲被杀而欲替父报仇的戏班“打女”方红(李宇春 饰);被南少林逐出山门,如今靠卖炸臭豆腐为生的“小贩”王复明(巴特尔 饰);他们身怀绝技,虽然并不明白“革命”真正的意义和惨烈,却因自身的各种原因,最先加入到保镖的队伍中。
而原本一事无成的“赌徒”沈重阳(甄子丹饰)因为与李玉堂“妾侍”月茹(范冰冰饰)的复杂恩怨,最终担负起了重要的护卫工作。
甚至是老奸巨猾的华人警察司长史密夫(曾志伟饰)都因深受感染而对保卫工作暗施援手。15日前夜,陈少白冒险逃狱成功,回归保卫革命的队伍中。李玉堂不知,他最心爱的儿子李重光已成为这次反刺杀行动中,最重要最特别的一员。
15日。孙中山抵港。
阎孝国组织的杀手队伍一拨又一拨地逼近了保镖队伍。双方展开了一场又一场惊心动魄的“全城追杀”……
最终,孙中山安全离境,身后的香港已染满保镖和杀手们的鲜血。
一年内,全国革命相继爆发。
1911年,辛亥革命爆发。