The story is set in the Southern Song Dynasty period of Chinese history.
Bai Suzhen (白素貞), a female white snake demon, dreams of becoming a goddess by doing good deeds. She transforms herself into a woman and travels to the human realm. There, she meets a green snake demon, Qing (青), who causes disaster in the area she lives. Bai holds Qing captive at the bottom of a lake but promises her that she will return 300 years later to free her. Bai keeps her word and develops a sisterly bond with Qing. They encounter Fahai, a sorcerer who believes that every demon is inherently evil and must be destroyed. However, Bai is too powerful and Fahai is unable to eliminate her immediately, so he vows to destroy them if he sees them again.
Fearing that they will meet more human sorcerers, Bai and Qing retreat to the Banbuduo, a realm that exists between the human and demon worlds. They try to perform good deeds by bringing rain to places experiencing drought. However, Qing was careless and almost flooded the whole town once. Due to this mistake, Bai loses her chance to become an immortal. However, Guan Yin informs her that she may have yet another opportunity.
In the meantime, Bai and Qing accidentally bring a scholar named Xu Xian, and his friend, into the demon world. Bai protects them from the other demons and falls in love with Xu in the process. After the battle with the lord of the Underworld, Xu confesses his feelings for Bai, claiming that it was love at first sight. However, for a human to return to his world, he must first become unconscious and have any memory about his experience in the demon realm erased, but Xu knows and avoids being knocked out. However, Fahai finds a way into the demon world and he tricks Xu into being knocked out.
When Xu Xian returns to the human realm he forgets everything. Since he and his friend entered the portal separately, they end up in different locations. Xu meets many new people there. Not long later, Bai takes a final step to becoming a goddess, which is to collect human tears. Bai sees Xu with another woman and assumes that they are a couple. Qing realizes that when Xu and Bai meet, Xu will fall in love with Bai again, so she helps to arrange a meeting for them. Xu and Bai are married, open a medicine shop and live happily together.
However, as humans and demons are forbidden to bond, the town is struck by a plague and ends up on the verge of total destruction. Bai, Qing and Fahai finally agree to a truce and obtain a magical herb needed to help the population. Bai becomes pregnant later with Xu’s child, but Fahai continues to attempt to eliminate her and Qing.