Yash Chopra shot the movie in Kashmir. All the cast stayed together as a family and contributed to every aspect of the film, and they even brought their families with them to Kashmir (they were used as extras in the wedding scenes). It was one of Chopra's happiest experiences and he described the production as a honeymoon.
The film was supposed to open with Amit standing under a tree and watching Pooja get married. Traditionally in a Hindi "shaadi" (wedding) ceremony, there were to be seven "pheras" (circuits) around the altar; therefore there would be seven different love scenes between Amit and Pooja intercut with each phera. This was deemed too artistic a beginning for the film, so a few days were spent re-shooting the simple scenes of Amit reciting poetry and meeting Pooja.
International singer Nelly Furtado fell in love with the song "Kabhi Kabhie" as a child. It is still a personal favourite of hers today.
Yash Chopra had originally signed Parveen Babi opposite Rishi Kapoor. For some unknown reason he replaced her with Neetu Singh. Yash Chopra felt guilty about this and started avoiding her calls. Finally Parveen barged into Yash Chopra's home and scolded him. She told him she was not upset about being replaced. She was upset he was avoiding her. If in future he had a good role for her, he should not hesitate. Yash eventually signed her for Kaala Patthar.
There are two versions of the poem "Kabhi Kabhie" - one is the romantic poem Amit sings to Pooja when they are in love, and the other version is a bitter ode of misery and loss rewritten by a shattered Amit when he loses her to Vijay. Sahir Ludhianvi wrote the sad version of "Kabhi Kabhie" first; the more romantic version was written for the film.