影片講述1906年10月15日來自四面八方的革命義士,商人、乞丐、車夫、學生、賭徒、戲班主在香港中環浴血拼搏,粉碎了壹場暗殺行動,保護孫中山的故事。負責接待他的義士商人知道有壹批滿清政府派來的刺客暗殺,所以請了壹批身懷絕技的保镖護送,最後順利將孫中山安全送去日本。
1906年。清末。正是清廷瘋狂暗殺“革命黨”的黑暗年代。
10月15日。革命領袖孫中山決定冒險赴港,名爲探望母親,實則與十三省革命代表見面會談。這是清廷“刺殺孫賊”的大好時機,將軍閻孝國(胡軍飾)買通香港警察,在全港織起了壹張“刺孫”的天羅地網。而中國日報社長陳少白(梁家輝飾)作爲革命黨人,必須在1小時內完成保衛孫中山的任務。
大商人李玉堂(王學圻飾)是陳少白老友,多年來壹直在暗中出資支持陳的革命工作。10月15日前夕,李玉堂正在爲17歲的獨子李重光(王柏傑飾)考上耶魯大學大宴賓客,陳少白尋上門來,希望其能出資支援此次孫中山來港——當李玉堂隨後發現兒子重光竟然也受革命思想影響時,不僅不願再度投資,更欲與陳決裂。
然而,就在此時,清廷將軍閻孝國及手下將戲班班主(任達華飾)及戲班衆人全部殺害,並將陳少白囚禁,面對陳少白的失蹤,以及《中國日報》報社等香港各革命據點的連續遭襲,令李玉堂無法袖手旁觀,他決定完成陳少白失蹤前的囑托,擔負起“保孫”的指揮工作,並在民間找尋各種能人義士,來保護即將來港的孫中山。
香港,臥虎藏龍之地。曾是貴公子,如今淪爲“乞丐”的劉郁白(黎明飾);對李家父子忠心耿耿的“車夫”阿四(謝霆鋒飾);因父親被殺而欲替父報仇的戲班“打女”方紅(李宇春飾);被南少林逐出山門,如今靠賣炸臭豆腐爲生的“小販”王複明(巴特爾飾);他們身懷絕技,雖然並不明白“革命”真正的意義和慘烈,卻因自身的各種原因,先後加入到保衛孫中山的隊伍中。
而原本壹事無成的“賭徒”沈重陽(甄子丹飾)因爲與李玉堂“妾侍”月茹(範冰冰飾)的複雜恩怨,最終擔負起了重要的護衛工作。
甚至是老奸巨猾的華人警察司長史密夫(曾志偉飾)都因深受感染而對保衛工作暗施援手。15日前日,陳少白冒險逃脫囚禁成功,回歸保衛革命的隊伍中。李玉堂不知,他最心愛的兒子李重光已成爲這次反刺殺行動中,被抽簽選中爲孫中山的替身。
15日。孫中山抵港。閻孝國組織的殺手隊伍壹撥又壹撥地逼近了保镖隊伍。雙方展開了壹場又壹場驚心動魄的“全城追殺”。
最終,孫中山安全離境,身後的香港已染滿保镖和殺手們的鮮血。壹年內,全國革命相繼爆發。1911年,辛亥革命爆發。