Balraj Kapoor (Amitabh Bachchan) is a rich businessman, happy and content with his world. He and his wife Shobhna (Hema Malini) live happily together and they wait for their only son Avinash a.k.a. ‘Avi’ (Salman Khan) to return from his studies in the United States. After an absence of 7 years, Avinash comes back to India. He reunites with his parents at the airport and races home. Back home, Avi joins his father’s business.
One day they decide to go golfing and Balraj accidentally hits the ball which ruins a painting. The young woman painting the picture, Malvika a.k.a. ‘Millie’ (Rani Mukerji) gets furious with Balraj and leaves. Later on, Avi runs into Millie on the golf course, and they start to talk. Millie tells him that a stupid old man ruined her painting and points out that it was Balraj; but she doesn’t know that the ‘old man’ is Avi’s father and he doesn’t tell her. They start to hang out together while slowly falling in love with each other.
When Millie comes home, she is visited by her childhood friend Rajat (John Abraham). She tells him that she loves someone, which devastates him because he is also in love with her. One day, Millie goes to Avi’s office to drop off a painting and finds out that Balraj is Avi’s father. When Avi shows up, she leaves the office crying. He chases after her and says that the only reason he lied to her was because he loves her. She doesn’t accept his apology right then, but when Balraj apologizes to her for ruining her painting, she forgives them both.
Avi asks Millie to get dressed up for a party at his house. When she arrives, there is no one except Avi. He proposes to her and she accepts. The whole family visits Millie’s house to discuss marriage and everyone agrees, except Rajat. He tells Avi that he will let Avi marry Millie if only he promises to always keep her happy and never let her get sad. Avi and Millie get married and soon they are expecting a child. Millie’s birth-pains begin while she is in yoga class. Avi rushes her to the hospital where they are blessed with a healthy baby boy. They name the child Ansh.
Ansh grows up to be a sweet and intelligent boy. The family throws a birthday bash for him on his birthday. They wait for Avi to get back home from work, but he never turns up. He meets with a road accident and dies; Millie is devastated.
Balraj seeks to bring happiness back into his widowed daughter-in-law’s life. He gets into contact with Rajat. He learns that Rajat still loves Millie. Balraj asks Rajat to marry Millie. However, there is stiff opposition from Shobhna (Avi’s mother) and Balraj’s conservative older brother Balwant (Om Puri). Shobhna fears losing her grandson Ansh, while Balwant takes the traditional Indian view that a widow with a child should devote herself to raising her child and think of nothing else, and that a woman marrying twice is committing a mortal sin. However, Balraj stands firm and convinces everyone. In the end, Rajat and Millie get married, and everything is well. Avinash comes in as a spirit and blesses his dad with happiness.