Kaala Daku (Sadashiv Amrapurkar) a tué un inspecteur intègre et juré d’éliminer ses deux enfants. Craignant cette menace, la femme de l’inspecteur confie la garde de son plus jeune fils à son frère Hari Singh. L’enfant, Shankar (Sunny Deol), devient un homme dur qui place la vérité et la justice au‑dessus de tout. De nature timide, il n’ose cependant jamais avouer son amour à Bindiya (Neelam). Cette dernière est amoureuse d’un évadé de prison, Vijay (Chunky Pandey), qui se fait passer pour un ingénieur chargé de construire un pont au village.
Mangal (Naseeruddin Shah), officier du CBI, est sur la piste de Kaala Daku. De son côté, Kaala tue le frère aîné de Shankar et, lorsqu’il l’apprend, Shankar jure de le faire payer. Bouleversé d’apprendre que Bindiya aime Vijay et non lui, Shankar n’a plus qu’un seul but : mettre Kaala Daku à genoux. Réussira‑t‑il à mener à bien sa mission ? Pour le savoir, il faut voir Kasam.