.
话说孙悟空(周星驰饰)护送唐三藏(罗家英饰)去西天取经,半路却和牛魔王合谋要杀害唐三藏,并偷走了月光宝盒。观音大士闻讯赶到,欲除掉孙悟空免得危害苍生。唐三藏慈悲为怀,愿以命相换,观音遂令悟空五百年后投胎作人,赎其罪孽。
五百年后的一天,五岳山下大漠风沙漫漫,斧头帮来了一个奇怪的女客春三十娘(蓝洁瑛饰)。众人在二当家(吴孟达饰)带领下欲行抢劫,反被她制住。匪头至尊宝(周星驰饰)率众复仇失败,春三十娘勒令群匪找一个脚底有三颗痣的人。晚上至尊宝等欲用迷香加害春三十娘,却令其现出蜘蛛精的真身。至尊宝孤身潜入春的房中,发现多了一个白晶晶(莫文蔚饰),至尊宝对她一见钟情。二当家夜探二女,查出原来春三十娘是蜘蛛精,白晶晶是白骨精,她们从菩提老祖那里得知唐三藏将会出现在五岳山,为了吃唐僧肉而来。二当家不幸被抓住,春三十娘用移魂大法将其奴化。菩提老祖为了挽回自己的口失来到五岳山,他说明至尊宝是孙悟空转世,至尊宝不相信。白骨精五百年前和孙悟空有一段纠缠不清的恋情,为了救至尊宝打伤了春三十娘,却中毒受伤。此时牛魔王杀到,二女不敌,挟持至尊宝和二当家回到盘丝洞。
春三十娘逼迫白晶晶杀掉至尊宝,反被二人关在机关里。春欲用迷情大法对付宝,又错用在二当家身上。白晶晶和至尊宝逃出后,白的毒发作开始尸变,至尊宝为了白返回盘丝洞,他以知道唐僧下落为由要挟春和他一起去救白晶晶。白早上醒来不见宝,误以为宝不顾她离去,悲愤跳崖,幸为牛魔王所救。
至尊宝在盘丝洞找到盘丝大仙留下的月光宝盒,此时牛魔王带白晶晶来到盘丝洞。白以为春和二当家生下的孩子是她和至尊宝所生,愤而自刎。至尊宝为了救白,使用月光宝盒使时光倒流,几次后产生故障,竟将其带回五百年前,这时紫霞仙子(朱茵饰)向她走