巡城馬郵差寧采臣來到一處村鎮為人送桔樹,受一群孩子所托,去南來鎮為他們的老師陳三泰送信。在去南來鎮的路上,險些被一對鬼母子吃掉,幸好被一盲道長燕赤霞所救。晚上,寧采臣于荒廢的蘭若寺內,遇到正在彈琴的小倩。
小倩本想吸取寧采臣的魂獻給姥姥,然而寧采臣的無欲無求讓小倩無從下手,他的善良更讓小倩有所動。晚上,盲道長捉妖至此,趕走了守在睡熟的寧采臣身旁的小倩。第二天,寧采臣醒來不見了小倩奧悔不已。去南來鎮尋陳三泰不得更是失望。晚上回到蘭若寺等小倩,誰知小倩帶給他的都是兒時的愿望,令寧采臣開心不己,二人亦情愫暗生。誰知姥姥和黑山老妖的較量卻打破了二人的寧靜世界,為躲避,二人藏于水缸之中,為不讓姥姥聞到人氣,小倩主動和寧采臣吻在一起
在去黑山較量中姥姥、盲道長被捉,二人極力掙脫出來,原來姥姥和盲道長本是一對夫妻,后道長得知妻子是妖后,痛心殺死自己與姥姥的孩,姥姥對此痛心不己,二人亦分道揚鑣。沒有肉體的黑山老妖痛苦不已,在得到了陳三泰的肉身后,便附身在陳身上。姥姥得知小倩與寧采臣產生感情后氣憤不已,要求小倩再不準見寧采臣,小倩無奈只得答應。然而此時的寧采臣雖然知道小倩是妖,但還是愛上了她。