清末民初,蘇家和萬家都在廣州開設武館,因同行相忌,兩家素有怨隙,但蘇家獨子燦(周潤發飾)與萬家幼子豪(劉德華飾)卻成為莫逆。燦、豪二人因際緣結識馬坤(苗僑偉飾)及蕭玲(米雪飾),燦與玲情投意合,雙雙陷入戀愛之中。
燦父因誤服“寧神丸”中毒身亡,燦被誣弒父,還押收監。玲為救燦失身於鄭隊長,燦被坤救出獄後,誤會玲水性楊花,壹怒之下,與坤、豪同往省城發展,吃盡苦頭,幸得盈盈(陳秀珠飾)的鼓勵和泉伯的協助才得以重開武館,但卻受到當地武館的排擠和挑釁……
玲到省城後重遇坤,坤向玲救婚,玲深知己與燦已無法復合,於是坦然接受坤的好意。另壹方面,燦終在鄭隊長處得悉當年真相,欲找玲冰釋前嫌,但為時已晚,燦痛悔之余,向盈盈求婚。
坤被鄭隊長利用偷取軍事藍圖,但藍圖卻輾轉落在燦手上,坤因誤會打死了豪。此時,玲搜出坤與日本人合謀的罪證,燦得知壹切真相之後,悲憤交集,誓要替豪報仇,毅然應約與坤決壹死戰……