清朝康熙年间,少林俗家弟子洪熙官(李连杰饰)是红花会成员,力图反清复明。洪熙官因被同门师兄马宁儿(计春华饰)出卖,家人被叛徒杀害,幸得幼子文定(谢苗饰)避过大难,洪熙官将马宁儿刺死后与文定浪迹天涯。洪熙官父子和行骗的朱小倩和红豆母女碰到一起,闹出许多事情。少林遭劫难,至菩禅师将藏宝图纹在五个年幼的的俗家弟子背上,为防被朝廷夺走,并密函告知洪熙官,务必护送他们前往红花会。但马宁儿被洪熙官打成重伤后,并没有死,而是变成全身是毒、刀枪不入的怪物,他杀害了红花会总舵主,并追杀五个孩子……
故事发生在八十年代的台湾,朱大德(猪哥亮 饰)本是一介平凡的摄影师,和女儿朱小芹(郭采洁 饰)过着相依为命的平静生活,之后,父女两人来到了大城市寻求发展,想要过上更好的生活。结果,在误打误撞之下,朱大德竟然成为了黑社会老大,他和朱小芹之间的关系亦因此而产生了裂痕。 某日,朱大德遇见了名为老贺(猪哥亮 饰)的算命先生,两人的样貌竟然惊人的相似,而老贺却也因此被人误认为是朱