Kamal Mehra (Anil Kapoor) is a successful businessman who owns AyKa, a company on the verge of bankruptcy. He has a troubled relationship with his wife, Neelam (Shefali Shah), and his two children, Ayesha (Priyanka Chopra) and Kabir (Ranveer Singh). Ayesha has a successful business of her own, but is unhappily married to Manav (Rahul Bose). Kabir unwillingly participates in the family business and yearns to pursue a career as a pilot. In celebration of Kamal and Neelam’s 30th anniversary, they invite their family and friends for a 10 day cruise trip across the Mediterranean. Among their invitees, are Mr. Sood (Parmeet Sethi) and his family. Kamal plots to get Kabir married to Sood’s daughter, Noorie (Riddhima Sood), in exchange for his investing in AyKa.
In the ship, Kabir meets a free-spirited dancer, Farah (Anushka Sharma), and engages in a romantic relationship with her. Noorie, on the other hand, falls in love with Rana (Vikrant Massey), the son of a family hated by her parents. Kabir and Noorie decide to manipulate their parents into believing that they are dating, while continuing their respective relationships. Meanwhile, Ayesha considers divorce from her husband, who she believes to be incompatible for her; her parents, however, are staunchly against it. During that time. Sunny (Farhan Akhtar), the son of Kamal’s manager arrives in the ship. It is revealed that Sunny and Ayesha were dating as teenagers; Kamal, unhappy with the relationship, paid for Sunny’s overseas education to separate them. Ayesha realises that she still harbors feeling for Sunny, a successful journalist, who unlike her husband appreciates her strong personality.
Neelam sees Kamal flirting with one of the female guests, and wonders why she did not divorce him despite his past infidelities. Meanwhile, Farah gets word that Kabir is due to marry Noorie, and in a fit of anger calls off their relationship. Elsewhere, Kamal spots Noorie making out with Rana, and is soon rushed to the hospital due to excess stomach gas. In the hospital room, Kamal tells Kabir that he saw Noorie with Rana, and asks him to not be involved with her anymore. Kabir, in a bout of anger, admits to his family that he knew about the couple all along, and that he is in love with Farah. He also tells them of his intention to not work in the family business anymore. Later, while trying to reconcile the differences between Manav and Ayesha, Kamal is infuriated to see Manav misbehaving with her. He agrees to the divorce and begs Ayesha for forgiveness. Ayesha subsequently reunites with Sunny.
Kabir tries to persuade Farah to forgive him for lying to her, but she ends up fired from her job for being involved with a passenger, and leaves the ship. Kabir realises of her fate much after the ship has set sail. Seeing no other option, Kabir jumps off the ship in hope of his family rescuing him and helping him get to the shore. Kamal, Neelam, Ayesha, and their dog Pluto (voiced by Aamir Khan) eventually find a lifeboat to rescue him. The Mehra family is seen happy in each other’s presence for the first time.