1、話說孫悟空護送唐三藏去西天取經,半路卻和牛魔王合謀要殺害唐三藏,並偷走瞭月光寶盒。觀音大士聞訊趕到,欲除掉孫悟空以免危害蒼生。唐三藏慈悲為懷,願意一命賠一命,觀音遂令悟空五百年後投胎做人,贖其罪孽。
2、五百年後的一天,五嶽山下的大漠之上風沙漫漫,突然來瞭一個奇怪的女客春三十娘(藍潔瑛飾)。眾人在斧頭幫二當傢(吳孟達飾)帶領下欲行搶劫,反被她制住。匪頭至尊寶(周星馳飾)率眾復仇失敗,春三十娘勒令群匪找一個腳底有三顆痣的人。晚上至尊寶等欲用迷香加害春三十娘,卻令其現出蜘蛛精的真身。至尊寶孤身潛入春三十娘的房中,發現多瞭一個白晶晶(莫文蔚飾),至尊寶對她一見鐘情。二當傢夜探二女,查出原來春三十娘是蜘蛛精,白晶晶是白骨精,她們從菩提老祖那裡得知唐三藏將會出現在五嶽山,為瞭吃唐僧肉而來。二當傢不幸被抓住,春三十娘用移魂大法將其奴化。菩提老祖為瞭挽回自己的過失來到五嶽山,他說明至尊寶是孫悟空轉世,至尊寶不相信。
3、白骨精五百年前和孫悟空有一段糾纏不清的戀情,為瞭救至尊寶打傷瞭春三十娘,卻身中春三十娘的劇毒。此時牛魔王殺到,二女不敵,挾持至尊寶和二當傢回到盤絲洞。春三十娘逼迫白晶晶殺掉至尊寶,反被二人關在機關裡。春三十娘欲用迷情大法對付至尊寶,又錯用在二當傢身上。白晶晶和至尊寶逃出後,白晶晶的毒發作,開始屍變,至尊寶為瞭白晶晶返回盤絲洞,他以知道唐僧下落為由要挾春三十娘和他一起去救白晶晶。白晶晶早上醒來不見至尊寶,誤以為至尊寶不顧她離去,悲憤跳崖,幸為牛魔王所救。
4、至尊寶在盤絲洞找到盤絲大仙留下的月光寶盒,此時牛魔王帶白晶晶來到盤絲洞。白晶晶以為春三十娘和二當傢生下的孩子是她和至尊寶所生,憤而自刎。至尊寶為瞭救白晶晶,使用月光寶盒使時光倒流,幾次之後至尊寶終於救下白晶晶,並告訴她沒將其拋棄不管,是找春三十娘要解藥,此時白晶晶明白真相,二人經過盤絲洞時,看見春三十娘正和牛魔王打鬥。晶晶、三十娘欲合力擊垮牛魔王,與此同時盤絲洞的洞門也將要關閉,白晶晶、春十三娘為救至尊寶和二當傢還有孩子將自己和牛魔王關在盤絲洞內......至尊寶再次使用月光寶盒穿越,但是這次竟將其帶回五百年前,這時紫霞仙子向他走來。