曾为清廷第一猛将苏灿(赵文卓 饰)丢弃大好前程回到家乡,本想自此研讨武学,开宗立代,和妻子袁英(周迅 饰)还有儿子从此不再区分,尽享天伦不料由于上代恩怨,义兄袁烈(安志杰 饰)练就魔功,杀死苏父,并掳走苏灿妻儿河滨一战,苏灿败北,性命攸关之际,妻子舍身相救,后又得遇隐居山野尝遍百草的高人于大姐(杨紫琼 饰)救助,两人得以保全性命。苏灿因右臂筋脉断裂而灰心懊丧,整天醉酒逃避事实,在妻子的精心照料与鼓舞之下,苏灿最终重新振作。苏灿与袁烈再次交手,一雪前耻,但因意气用事却未能及时救出被袁烈埋上天下的袁英。妻子逝世之后,伤心欲绝的苏灿与儿子漂泊至中俄边境,此时的苏灿形同乞丐。在一次醉酒之后,他遇到曾经在幻象中与自己商榷的“武神”(周杰伦 饰),在与武神交手进程中,他领悟到一套于醉酒之中展现武术精妙的拳法——醉拳。面对国人受辱,好友与儿子身陷危难,苏灿毛遂自荐,与俄国鼎力士展开激战,最终靠醉拳打败冤家。