巡城马邮差宁采臣来到一处村镇为人送桔树,受一群孩子所托,去南来镇为他们的老师陈三泰送信。在去南来镇的路上,险些被一对鬼母子吃掉,幸好被一盲道长燕赤霞所救。晚上,宁采臣于荒废的兰若寺内,遇到正在弹琴的小倩。
小倩本想吸取宁采臣的魂献给姥姥,然而宁采臣的无欲无求让小倩无从下手,他的善良更让小倩有所动。晚上,盲道长捉妖至此,赶走了守在睡熟的宁采臣身旁的小倩。第二天,宁采臣醒来不见了小倩奥悔不已。去南来镇寻陈三泰不得更是失望。晚上回到兰若寺等小倩,谁知小倩带给他的都是儿时的愿望,令宁采臣开心不己,二人亦情愫暗生。谁知姥姥和黑山老妖的较量却打破了二人的宁静世界,为躲避,二人藏于水缸之中,为不让姥姥闻到人气,小倩主动和宁采臣吻在一起
在去黑山较量中姥姥、盲道长被捉,二人极力挣脱出来,原来姥姥和盲道长本是一对夫妻,后道长得知妻子是妖后,痛心杀死自己与姥姥的孩,姥姥对此痛心不己,二人亦分道扬镳。没有肉体的黑山老妖痛苦不已,在得到了陈三泰的肉身后,便附身在陈身上。姥姥得知小倩与宁采臣产生感情后气愤不已,要求小倩再不准见宁采臣,小倩无奈只得答应。然而此时的宁采臣虽然知道小倩是妖,但还是爱上了她。