本作の主人公は、暴力を振るう旦那から逃げてきた麻衣香。彼女は郊外に佇むラブホテルで働きながら、娘のさくらを育てている。しかしさくらは、小学校に通う年齢になっても戸籍がないまま。どうすればいいのかわからない麻衣香の背中を、世の中から必要とされない人々が押す。
上海工人第三次武装起义失败后,上海城一片白色恐怖。年轻的共产党员阿立死里逃生,苦苦寻找党组织。他在集市遭到流氓头子阿金手下人的袭击,混战中,阿立发现对方领头的娘子似曾相识,而娘子也认出了阿立并放走了他,众打手莫名其妙。在一家废弃的工厂,阿立找到了藏匿的武器,还与战友炳坤不期而遇,两人发誓血债血偿。 特务头子余恩生四处寻找幸存的革命者,他与工贼邱伯平狼狈为奸。一天,趁两人吃饭时,阿立、炳坤杀了进来。邱伯平被打死,余恩生侥幸逃脱。阿立和炳坤继续寻找自己的同志,却再次遇险,幸亏有娘子及时相救,倒戈杀了作恶多端的阿金。阿立与娘子渐生情愫。街上贴满通辑令,大家只得分散行动。他们设法劫持了朱介甫,与余恩生谈判交换人质。老奸巨滑的余恩生企图借机将革命者一网打尽。寒风萧瑟、乌云蔽日,又一场血战即将开始……
现行法律体制下,犯罪分子们用各种方式逃脱法律制裁,人民对此无可奈何,然而一个神秘蒙面人“夜叉”突然出现,对那些逃脱惩罚的人渣施以鞭笞的私刑,润年企业主席也难逃夜叉制裁。从美国回港的警官华启伦(陈小春 饰)奉命抓捕夜叉,华选择即将退休的警察介哥(柯受良 饰)作为搭档。原来介哥当年与两名义子阿泰(古天乐 饰)、子年合称“旺角三鹰”,阿泰性格刚硬,嫉恶如仇,然而却在一次追索毒贩的任务中枪杀嫌疑人,导致失去公职。华启伦视阿泰为夜叉的真身,于是借介哥试图揭开事情真相。然而,华启伦和夜叉的对决,这才仅仅是开始……