On a stormy night, Devendra (Dilip Kumar), an engineer, drives down a hill road with his friend, to fetch his wife and child from the railway station. A landslide blocks their path and the friends take shelter in an old mansion just off the road. Devendra finds the house uncannily familiar. In the large front room he finds an old portrait which he recognizes. His friend and the old caretaker join him, and Devendra, amidst flashes of memory from another life, sits down to tell his story while the storm rages outside. Anand (Dilip Kumar) had come to Shyamnagar Timber Estate as its new manager. An artist in his spare time, he roamed the hills and forests with his sketching pad and fell in love with Madhumati (Vyjayantimala), a tribal girl whose songs have haunted him from a distance.

While driving his car on a rainy night, Anand's car breaks down, and he goes to seek shelter in a nearby house. He is let into the house by the servant, and he is permitted to stay until the rains stop, and he is able to get his car fixed. It is here that Anand will find out about his previous birth, his true love, Madhumati, their ill-fated, star-crossed and tragic romance, and how this the events in his previous birth are going to effect him in this life-time.