The story starts with narration by Maddy (R. Madhavan) himself. Maddy is the son of a music shop owner (Anupam Kher) who hopes that Maddy will someday take over his shop. Instead, Maddy is a total brat, not serious about studies and notorious in his college. He harasses the girls in his college. In contrast to him is his arch rival Sam (Saif Ali Khan), a model student, with whom Maddy is at constant loggerheads. The enmity goes so far that Maddy even tries to frame Sam. Sam challenged Maddy for one-on-one fight, to which Maddy happily agreed. But the fight was interrupted in between by the professors. Later at Sam's graduation party, Maddy again tries to challenge Sam, but this time, Sam denies. Sam graduates and leaves the college, but promises Maddy that one fine day, he will complete what was started (i.e., the fight).
Two years later, Maddy has taken a job as software instructor at a private company. His attitude has mellowed a lot, but not changed. He and his college cronies attend a wedding of another classmate, where Maddy spots Reena (Diya Mirza). Maddy is smitten and tries to learn more about her, but in vain. However, destiny makes them meet again. Soon he learns that Reena plans to marry Rajeev Samra, an old friend who is now an NRI. Maddy also learns that Reena doesn't know how Rajeev looks like now.
On persuasion of his friends and specifically by his father (aka DD), Maddy decides to pretend to be Rajeev. Reena, who previously liked him only as a friend, falls in love with him too. Everything goes well until Rajeev's parents call and tell them that the real Rajeev is coming to meet them. On learning this, everyone is shocked and Maddy's secret is revealed. Reena decides to call off her relationship with Maddy. The real Rajeev also decides to meet his impostor.
Maddy is shocked to see that Rajeev is none other than Sam. Sam is even more infuriated to learn his impostor's true identity. Rajeev and Reena's parents decide to get them married as soon as possible. Here, Maddy goes into depression and starts drinking. Reena is no better off without him either, as she finds it very difficult to forget him. Though the enmity between Sam and Maddy is renewed, Sam cannot help but notice that Reena is marrying him only because she is mad at Maddy.
Finally, Rajeev confronts Reena and asks her whether she loves him or Maddy. In the meantime, Maddy decides to go to San Francisco, California, taking an offer made to him by his current employer, which initially he had declined. When Rajeev realizes that Reena still loves Maddy, he takes her to the airport. Rajeev and Maddy spot each other. Maddy thinks that Rajeev has come to rebuke him once more. Rajeev hands Reena over to Maddy, upon which the duo confess their feelings for each other. Rajeev is heartbroken, but feigns his old attitude towards Maddy saying that "we can never be friends" and leaves them.