'Chamatkar' which literally translates to miracle, is a fantastic and magical tale of one man's unique relationship with a ghost, that takes his life on a life-altering path in life.
Sunder Srivastava (Shahrukh Khan) is a young graduate whose main ambition in life is to fulfill his father's dream of starting a school on his half-acre property in his village, though he has no funds to execute his plans. Sunder's childhood friend Prem, a seasoned conman who operates in Bombay, convinces the gullible Sunder to mortgage his land to the village Zamindar (landlord), and fly to Dubai.
Prem promises Sunder a handsomely paying teacher's job in Dubai that would give Sunder enough money to start his school within two years. Sunder does as told and arrives in Bombay to meet Prem; not only is there no sign of his friend at the station, but Sunder also gets unwittingly involved with a petty thief who robs him of all his luggage and money. To make matters worse, when Sunder reaches Prem's lodge, he finds an apologetic letter from Prem informing him that he has used his Rs.10,000 to get himself to Dubai instead and will one day repay him.
At the end of his tether, Sunder wanders into an old Christian cemetery. Sitting on an old grave, Sunder gives vent to his frustrations and strikes the tombstone in helplessness, but immediately apologizes to the deceased. This amuses the ghost of Amar Kumar, alias Marco (Naseeruddin Shah), who was killed and thrown into the grave 20 years ago, only to rise at Sunder's apology. Marco explains to a frightened Sunder that he was a notorious Crime Don, who at the behest of his romantic partner Savitri (Malvika Tiwari), had resolved to give up crime, but was shot by his protégé Kunta the day after the wedding. Marco seeks Sunder's help in getting even with his killers, and promises Sunder a job and a place to stay, in return.
Marco manages to get Sunder a post in a school run by his father-in-law (Shammi Kapoor). Everyone grows fond of the new games teacher, including Marco's daughter (Urmila Matondkar). She is a vivacious girl of an age with Sunder, who has been courting a man at least twice her age, obsessively followed by her largely invisible father.
Kunta (Tinnu Anand) makes an attempt to capture the playing ground on the college campus. The college is starved of funds and proposes a cricket match to collect funds. Sunder and his team are helped by the invisible Marco, who cheats on their behalf and ensures victory. When Sunder tries to tell the others that he can see and talk to Marco, nobody believes him. In a final bid for victory, Kunta captures Sunder, Marco's daughter, and Marco's father-in-law, and attempts to bury them alive. Marco rescues them and gives all the criminals, led by Kunta a royal and well-deserved beating. He is about to kill Kunta but Sunder pleads with him not to do so. Marco forgives his enemy and lets him go.
In time, Sunder marries Marco's daughter while Marco ascends to heaven. As he goes, Marco warns the children that although he came back to life for a second chance to do the right thing, they will not have the same chance; they therefore must make the best of what chances they have now, in this mortal lifetime.