Karz is the story of an abandoned child Sooraj, who grows away from the cozy comforts of his mother's lap to become a cynical young man (Sunny Deol). Raised by a kind widower, Sooraj begins to detest the fact that his mother got rid of him soon after his birth.
This dreary truth keeps tormenting Sooraj day and night. Unable to swallow the bitter truth, he finds solace in alcohol that numbs his psyche and makes him forget his horrible past.
Then one day an unexpected turn comes in his life with the entry of a beautiful girl named Sapna (Shilpa Shetty).
Sapna, who is the daughter of Sooraj's father's friend, immediately takes to reforming a dilapidated Sooraj. Prodded by her, Sooraj quits drinking and brings some discipline in his previously disordered life. In the process he also begins to love her but could never muster the courage to tell her about his feelings.
Meanwhile, Sooraj befriends a delightful young man, Raja (Sunil Shetty), who fondly calls him his brother. And, like a big brother, Sooraj keeps bailing Raja out of the dicey situations whenever the latter gets into trouble.
But the duo's ideal-like bond turns into a rivalry after Sooraj discovers that the girl Raja has been wooing is none other than Sapna. Raja tries to convince his friend of his sincerity at marrying Sapna, but to no use.
It is then that a sensational revelation by Raja stuns Sooraj. Raja happens to be the son of Sumitra Devi (Kiron Kher), Sooraj's real mother. He is in fact Sooraj's younger brother.
Demons of past begin to haunt Sooraj once again and he decides to meet his mother to find out the reason why she abandoned him at such a tender age. Little does he know that his 'reunion' with his mother will further complicate the matter.