洪兴大飞(黄秋生 饰)手下没牙佬的女儿阿May和东星大咪的手下皇帝(黎骏 饰)相恋,两个大佬为此坐下谈判。大飞嚣张气焰令皇帝的小弟善仔等人颇为不满,他们次日大闹大飞的桑拿馆,结果反被对方修理一通。某日,大飞看望罹患癌症不久于人世的前女友阿玲,继而得之自己有一个17岁的儿子,而儿子正是善仔。虽然亲子鉴定显示了他们的父子关系,但大飞和善仔均无法接受这个事实。 东星社计划和云南毒贩做毒品生意,皇帝亲自操办此事。他委派善仔等人亲自前行,却暗中吞掉毒品,嫁祸大飞。在兄弟情义和父子亲情面前,善仔面临着充满艰险的抉择……
片中主角牛叔的父亲在日本统治时期是个汉奸,他为了保全自己的性命而将抗日义士的全家杀害。义士沉冤地下之后变成了冤魂,并誓杀牛叔全家为自己一家人报仇。牛叔拥有阴阳眼能看见游魂,并与群鬼交上了朋友。在群鬼的保护之下,义士的冤魂未能伤害牛叔,于是又转向牛叔的儿子辉下手。为免辉遇害,牛叔将辉送往国外避难。自此,牛叔在新界经营山水茶楼,白天营业,晚上却款待群鬼以答谢保护家人之恩。 辉二十六岁时回港发展,地产发展商计划收购牛叔茶楼地皮,牛叔坚持不卖,辉决定盗取地契及印鉴卖地。被牛叔发觉后,慌乱间辉以重物击倒牛叔。辉忤逆伤父,触怒群鬼,他们不再保护辉,义士冤魂终得以有机会向辉下毒手。辉在车祸中死去,其魂魄回到茶楼,才知道老父往日招呼群鬼的原因,辉悔恨不已。此时冤魂又向牛叔下手,牛叔与冤魂达成交易,愿以自己的性命换取儿子的性命。当辉醒来时,发觉在车祸中丧生的竟是牛叔。从此辉接管了茶楼,并于夜间在每张桌上摆酒设供、款待鬼神。