Badal (Bobby Deol) is a young man with a tragic childhood. As a child, he had witnessed his entire family, his loving father, mother, and baby sister, murdered in a village massacre by ruthless police officer Jaisingh Rana, who kills people for fun. Years later, Badal has become a dreaded terrorist whose main target in life is exacting revenge on Jaisingh Rana for his family's horrible death. In this endeavor, Badal travels to a small town, where he meets a good-natured police officer, Ranjeet Singh (Amrish Puri), who takes Badal under his wing, and Rani (Rani Mukerji), a bubbly free spirit who falls madly in love with him. Ranjeet Singh's family eventually takes Badal in as a son. Through both Singh's family and Rani, Badal is given a new lease of life and comes to understand the values of sentiments, love and relationships, all of which he has missed out on in his life.
However, after Ranjeet Singh finds out who Badal really is, and Badal comes face-to-face with Jaisingh Rana, who is now a big-name but still evil police inspector, he must figure out how to clear the misunderstanding between him and Ranjeet Singh, withhold Rani's love, and finally get the revenge he has thirsted for against Jaisingh Rana.