Ambientato negli anni '70 in un grazioso angolo dell'India, Barfi! è la storia di tre giovani che imparano che l'amore non può essere né definito né contenuto dalle norme sociali di normalità e anormalità. Barfi, un ragazzo con problemi di udito e di linguaggio, si innamora di Shruti. Nonostante il suo profondo affetto per Barfii, Shruti cede alle pressioni della società e dei genitori per sposare un uomo "normale" e condurre una vita "normale". Molti anni dopo, le loro strade si incrociano nuovamente quando Barfi, ormai innamorato di Jhilmil, è in fuga dalla polizia. Barfi è alla disperata ricerca di Jhilmil, che è scomparsa. La consapevolezza di Shruti che Jhilmil ha problemi mentali le fa capire che il vero amore è davvero cieco. In un gioco del gatto e del topo, alla ricerca della ragazza amata da Barfi, Shruti si rende conto di essere ancora innamorata di lui. Ora deve scegliere tra la sua felicità e quella di lui. Barfi! è interpretato da tre delle più amate giovani star indiane...
Realizzato con un budget di circa ₹300 milioni (3,9 milioni di dollari), Barfi! è stato presentato in tutto il mondo il 14 settembre 2012. Il film ha ricevuto un ampio consenso da parte della critica, che ha lodato le interpretazioni del cast, la regia, la sceneggiatura, la fotografia, la musica e la rappresentazione positiva dei disabili fisici. Il film è stato un successo al botteghino, diventando uno dei film di Bollywood con i maggiori incassi del 2012 in India e all'estero. Il film ha incassato oltre 1,75 miliardi di rupie (25 milioni di dollari) in tutto il mondo.
Il film è stato selezionato come voce ufficiale dell'India per la nomination come miglior film straniero all'85° edizione degli Academy Awards. Barfi ha ottenuto numerosi premi e nomination in varie cerimonie di premiazione in India. Alla 58° edizione dei Filmfare Awards, il film ha ricevuto ben 13 nomination, tra cui Miglior Attrice Protagonista per Chopra e Miglior Attrice Non Protagonista per D'Cruz, e ha vinto ben 7 premi, tra cui Miglior Film, Miglior Attore per Kapoor, Miglior Debutto Femminile per D'Cruz e Miglior Direttore Musicale per Pritam.
Murphy "Barfi" Johnson (Ranbir Kapoor) è un ragazzo sordomuto che vive a Darjeeling ed è conosciuto come un combinaguai in quanto abbatte i lampioni delle strade o fa scherzi a persone innocenti ed è spesso inseguito dall'ispettore Sudhanshu Dutta (Saurabh Shukla), un ufficiale della polizia locale. Ben presto, Barfi incontra Shruti Ghosh (Ileana D'Cruz), una splendida e istruita ragazza appena arrivata a Darjeeling. Rimane colpito dalla sua bellezza celestiale e dal suo fascino e si innamora di lei. Tuttavia, la madre di Shruti (Roopa Ganguly) le consiglia di evitare di sposarlo a causa della sua mancanza di denaro e della sua disabilità. Shruti accetta malvolentieri il consiglio della madre, sposa Ranjeet Sengupta (Jisshu Sengupta) e lascia Darjeeling, interrompendo ogni contatto con Barfi. Poco dopo la partenza di Shruti, il padre di Barfi (Akash Khurana) soffre di un'insufficienza renale e viene ricoverato in ospedale; a Barfi viene chiesto di organizzare ₹7000 per il suo intervento. Nel frattempo, l'amica d'infanzia autistica di Barfi, Jhilmil Chatterjee (Priyanka Chopra), viene improvvisamente rapita e il suo ricco padre Durjoy Chatterjee (Ashish Vidyarthi) chiede all'ispettore Dutta di cercarla. Dopo un tentativo fallito di rapinare una banca locale, Barfi trova Jhilmil in un furgone abbandonato e si allontana con lei. La nasconde nel suo appartamento e invia una richiesta di riscatto di ₹7000 alla famiglia di Jhilmil. Il padre di lei consegna il riscatto a Barfi, ma purtroppo il padre muore subito dopo aver effettuato il pagamento in ospedale. Barfi, sconfortato, lascia Jhilmil a casa del suo custode, ma lei si rifiuta di rimanere lì e lo costringe a portarla via. In seguito, Barfi scappa abilmente dall'ispettore Dutta insieme a Jhilmil e i due si trasferiscono presto a Kolkata.
6 anni dopo, Barfi si riunisce inaspettatamente a Shruti, infelice del suo matrimonio con Ranjeet. Shruti riaccende la sua amicizia con Barfi e i due iniziano a riavvicinarsi, con grande gelosia di Jhilmil che poi scompare. Shruti denuncia la scomparsa di Jhilmil alla polizia. Ben presto, l'ispettore Dutta viene a conoscenza della scomparsa di Jhilmil, si reca a Kolkata e si imbatte in Barfi. Dopo un divertente inseguimento, l'ispettore Dutta riesce ad arrestare Barfi e a portarlo a Darjeeling. Lì, durante l'interrogatorio alla stazione di polizia, viene avanzata un'altra richiesta di riscatto. Tuttavia, Jhilmil sembra essere stata uccisa durante lo scambio del riscatto, anche se il suo corpo non viene ritrovato. La polizia incastra Barfi per l'omicidio di Jhilmil al fine di concludere il caso. L'ispettore Dutta, che si è affezionato a Barfi dopo averlo inseguito per i suoi fastidi, chiede a Shruti di portarlo via, offrendogli una seconda possibilità nella vita. Shruti riporta Barfi a Kolkata, sperando di poter finalmente stare con lui dopo la perdita di Jhilmil. Tuttavia, Barfi scopre l'indirizzo della casa di cura di Jhilmil dagli scarabocchi che lei aveva fatto a casa sua. Porta Shruti alla casa di cura dove si scopre che entrambi i rapimenti di Jhilmil sono stati inventati dal padre per sottrarre molto denaro dal suo fondo fiduciario. Nel suo secondo tentativo, ha inscenato la morte di Jhilmil per farla vivere nella casa di cura, lontano dalla madre alcolizzata (Preeti Dayal). Barfi e Jhilmil si riuniscono felicemente e finiscono per sposarsi.
34 anni dopo, un anziano Barfi viene mostrato gravemente malato in ospedale, dove Jhilmil giace con lui sul letto dell'ospedale e muoiono insieme. Shruti racconta come siano morti serenamente, non volendo lasciarsi l'un l'altro né in vita né in morte. Il film si conclude con la proiezione dei giorni felici di Barfi e Jhilmil e i titoli di coda.