Avinash (Anil Kapoor) comes to Calcutta to search for his only son and finds himself engulfed with too many people interested in him. His only lead is a telephone number given to him by a cop before coming to Calcutta. As soon, as he lands in Calcutta, he needs a place to stay. Here, he meets Reema aka Bulbul (Rani Mukherjee), a bubbly novelist who is supposed to be doing research for her novel. The room that Avinash gets is occupied by Bulbul. She refuses to vacate so Avinash stays there too (though he sleeps outside the room). Bulbul falls in love with Avinash and becomes the light in his dark life.
There are flashbacks throughout the movie. Sanjana (Manisha Koirala) and Avinash once lived in Calcutta with their only child, a son. One day, Avinash witnessed a crime being committed and came to the assistance of the victim, taking him to hospital. This did not augur well with his assailants, and they killed Sanjana and abducted their child. The police was involved but was unable to trace the child.
A heartbroken and desperate Avinash decides to take matters into his own hands and begins inquiring. His inquiries take him to Mumbai via the Calcutta Mail, and this is where he will find out whether his son is alive or not, or whether he himself has been lured into a deadly trap.
This movie is based on the 1998 Telugu film Choodalani Vundi.