Divya (Manisha Koirala) and Karan Saxena (Sunny Deol) are in love and plan to marry. Karan has a younger step-brother, Vivek (Sonu Nigam) who he looks after as if he was his own brother. Divya and Vivek hang out with quite a few young people of their own age, Atul (Akshay Kumar), Vijay (Sunil Shetty), Prem (Aftab Shivdasani), Ashok (Aditya Pancholi), Viktor (Sharad Kapoor), Abdul (Arshad Warsi), Nita(Rambha), Rashmi (Kiran Rathod), Niki, and Priti.
Two male members named Rajesh (Rajat Bedi) and Madan (Siddharth Ray) try to rape Divya, and get a sound thrashing from Karan. After apologizing, these two members decide to avenge their beating and humiliation. Soon after Karan leaves for a business trip abroad. Divya, begins to have premonitions of a past life and later learns she was the lover of Kapil (Armaan Kohli), a snake with magical powers, in a previous life.
Their love life was shattered by an angry sage (Amrish Puri) who cursed them with separation until the 21st century. Divya, who was called Vasundhara in her previous life, dies after this curse, and is reborn as Divya. She and Kapil reunite, however she is left torn as to what to do about her relationship with Karan.
Rajesh under the pretext of inviting Divya to Atul’s party, impersonates the voices of the male members of their gang and tricks her into coming to an abandoned fort. Divya, arrives and they rape her to such an extent that Divya kills herself. Divya’s friends arrive and she curses them thinking that all of her friends were involved in the rape. The rest of the friends are completely unaware of anything and are innocent.
Kapil learns of her death and comes back to life to get revenge from everyone in the group. As a result, Madan is killed on the same day as Divya and then Rajesh is killed on his wedding night by Divya’s ghost.
This is followed by Victor being run over by Kapil on a motorbike and Abdul being electrocuted to death. Atul & his friends with the help of their college principal Joseph (Raj Babbar), who is also a professor of parapsychology summon Divya’s ghost and they try to reason with her explaining they had nothing to with her rape and death, however she refuses to believe their innocence. Therefore, principal Joseph gives the group of friends a necklace and assures them that they cannot be harmed when they are wearing the necklace. Atul doesn’t believe in any of this. However, when he is attacked by Kapil, he realizes he survived because the necklace was stuck on his hand. However, later Atul is badly injured by Kapil and he goes into a coma.
Divya then enters Prem’s body and kills Ashok. Prem is thus accused of committing murder and he is sentenced to be hanged by the court. Vijay is pushed off a gym roof. Vivek, afraid he’s next, calls his big brother Karan (Sunny Deol).
Karan arrives to rescue Vivek, but before that, Kapil stabs Vivek using Karan’s image. Karan is arrested after Vivek accuses Karan of stabbing him. Atul comes out of coma and tries to save Vivek. Atul gets stabbed by Kapil while trying to save Vivek. Kapil chases Vivek. Atul, unable to destroy Kapil or save Vivek’s life, goes to the same priest, who gave the lockets. Atul asks the priest to save Vivek’s life. Atul then dies due to blood loss from his injuries.
Karan shows up to stop Kapil from killing Vivek. Karan gets killed by Kapil. Principal Joseph resurrects Karan with outerworld powers, granting him supernatural powers like Kapil. Karan kills Kapil. Vivek turns out to be the only survivor along with his brother Karan. Kapil and Vasundhra reunite in heaven.