Yashwardhan Raichand è un uomo che ha sempre seguito le tradizioni e crede che i genitori prendano le decisioni migliori per i propri figli. Così, quando il suo figlio adottivo Rahul si innamora di una vivace ragazza della classe media, Anjali, Yashwardhan lo ripudia. Questo crea una spaccatura tra i due uomini egoisti. Rahul sposa Anjali e si trasferisce a Londra con lei e la sorella minore Pooja. Anni dopo, Rohan, il fratello minore di Rahul, arriva a Londra deciso a riunire la sua famiglia.
Lo sviluppo del film è iniziato nel 1998, subito dopo l'uscita del film di debutto di Johar, Kuch Kuch Hota Hai (1998). Le riprese principali sono iniziate il 16 ottobre 2000 a Mumbai e sono proseguite a Londra e in Egitto. Kabhi Khushi Kabhie Gham... è stato promosso con la tag-line "It's All About Loving Your Parents". Inizialmente previsto per le festività del Diwali del 2001, il film uscì in India, Regno Unito e Nord America il 14 dicembre 2001.
Realizzato con un budget di ₹300-400 milioni (6,36-8,48 milioni di dollari), Kabhi Khushi Kabhie Gham... è stato un grande successo commerciale, sia a livello nazionale che internazionale, con un incasso di ₹1,36 miliardi (29 milioni di dollari) al botteghino mondiale, diventando il film indiano che ha incassato di più in tutto il mondo al momento della sua uscita. Ha ricevuto recensioni contrastanti da parte della critica che ha lodato la fotografia, i costumi, la colonna sonora, le interpretazioni, le sequenze emotive e i temi, ma ha criticato la lunghezza e la sceneggiatura. Al di fuori dell'India, il film è stato il film indiano che ha incassato di più, fino a quando il suo record non è stato battuto dal successivo film di Johar, Kabhi Alvida Naa Kehna (2006). L'anno successivo, Kabhi Khushi Kabhie Gham... vinse numerosi premi nelle cerimonie di premiazione popolari, tra cui cinque Filmfare Awards.
Yashvardhan "Yash" Raichand è un uomo d'affari miliardario. Vive a Delhi con la moglie Nandini, i due figli Rahul e Rohan e la madre Lajwanti. La loro famiglia è fortemente patriarcale e segue rigorosamente le tradizioni. Rahul è stato adottato da Yash e Nandini alla nascita. Questo è noto a tutti i membri della famiglia, tranne che a Rohan.
L'adulto Rahul torna a casa dopo aver completato i suoi studi a Londra e si innamora della vivace Anjali di Chandni Chowk. Rahul scopre subito che lei ricambia il suo amore. Tuttavia, poiché la ragazza proviene da un ambiente a basso reddito, suo padre non approverebbe mai l'unione. Durante questo periodo Rohan, ancora bambino, viene mandato in collegio come da tradizione familiare. Yash annuncia a Rahul il suo desiderio di sposare Naina, un'amica d'infanzia di classe superiore.
Dopo aver saputo di Anjali, Yash si infuria per il suo status. Rahul promette di non sposarla. Tuttavia, viene a sapere che il padre di Anjali e di sua sorella minore Pooja, Om, è morto, lasciandole indietro. La sposa spontaneamente nonostante l'ostilità di Yash. Quando la porta a casa, Yash ripudia Rahul ricordandogli il suo status di adottato. Ferito da ciò, Rahul si congeda da Nandini con una lacrima e se ne va di casa. Rohan non scopre mai la verità sul motivo per cui Rahul ha lasciato casa.
10 anni dopo, Rohan torna a casa dal collegio e finalmente scopre dalle sue nonne, Lajjo e Kaur, il motivo della partenza di Rahul e il fatto che è stato adottato. Vedendo il dolore che questa separazione ha portato ai suoi genitori, Rohan giura di riunire la famiglia. Viene a sapere che Rahul, Anjali e Pooja si sono trasferiti a Londra e si reca lì, mentendo a Yash e Nandini, per proseguire gli studi. Rahul e Anjali hanno un figlio piccolo, Krish.
Pooja è una diva ultramoderna che studia al King's College di Londra. Lei e Rohan, che in passato erano amici d'infanzia dopo che Rahul e Anjali si erano innamorati, si riuniscono. Lo sostiene nel suo tentativo di riportare Rahul e Anjali a casa. Rohan si finge un amico di Pooja dall'India. Rahul lo lascia vivere con loro dopo che Rohan si presenta come "Yash" per nascondere la verità: Rahul non riconosce il fratello ormai adulto e immensamente cambiato che lo vede dopo tanti anni.
Nel frattempo, Rohan e Pooja si avvicinano e sviluppano sentimenti reciproci. Alla fine Rahul si rende conto che Rohan, alias "Yash", è suo fratello. Rohan lo prega di tornare a casa ma lui rifiuta, ricordandogli le parole di Yash. Rohan invita Yash e Nandini a Londra e organizza una riunione segreta per portarli tutti nello stesso centro commerciale. Nandini e Rahul si riuniscono emotivamente. Tuttavia Yash si infuria con Rohan quando vede Rahul, Anjali e Pooja con lui e il loro confronto non va bene.
Nandini affronta Yash per la prima volta, dicendogli che ha sbagliato a ripudiare Rahul e a rompere la famiglia. Dopo la morte della nonna, Rohan e Pooja convincono Rahul e Anjali a tornare a casa. Nandini dà loro il giusto benvenuto; Yash chiede in lacrime il perdono, dicendo a Rahul che gli ha sempre voluto bene. Rohan e Pooja, che si sono innamorati, si sposano. La famiglia festeggia in ritardo il matrimonio di Rahul e Anjali, vivendo così felicemente insieme, e anche il matrimonio di Rohan e Pooja.