The film begins on a dark night with a young girl, Rupa (Sabina), driving her car at a very high speed around the hills of Mussoorie and stopping at The Park Hotel. A few moments later, she rushes inside and mysteriously falls to her death from the third floor of it, clutching something in her hand. Her death is declared to be suicide by everyone among the curious onlookers, including Rocky (Shammi Kapoor), a drummer, and Ruby (Helen), a dancer at The Park Hotel. One year later, Rupa's ex-fiancée, Ramesh (Prem Chopra), is shown to be trying to fix his marriage with Rupa's grieving younger sister, Sunita (Asha Parekh), who is not as enamoured of the proposal though Ramesh tries to ingratiate himself with her. Sunita reveals to her friend, Meena (Laxmi Chhaya), that Rupa had written a letter to her on the night of her death, confessing that she was deeply in love with Rocky, and implying that they had sexual relations, and that she desperately needs to marry him. Sunita believes that Rocky had seduced and then betrayed her sister which led her to commit suicide, and intends to travel to Dehradun and Mussoorie and track down Rocky to avenge her sister's death.
On her way to Dehradun, Sunita meets Anil Kumar, a charming but mischievous young man, who continuously flirts with her throughout the journey. As she checks into The Park Hotel with Meena, Sunita is surprised to find Anil there too, and he continues to woo her. Unbeknownst to Sunita, Anil himself is Rocky (his stage name) and this secret is only known to Ruby, who is in love with Anil. Anil manages to discover that Sunita is Rupa's revenge-seeking sister, and misleads her by disguising another co-worker (Salim Khan) at The Park Hotel as Rocky, while he continues to pursue her as Anil. He even lies about his job that he is the nephew and heir of a wealthy landlord residing in a local mansion in Dehradun. While Sunita initially rebuffs his advances, she eventually falls in love with Anil after realising his kind and gentle nature during an unexpected overnight trip, and even confides in him about her sister's tragic death and her hatred for Rocky. Anil reluctantly keeps up the charade and ends up having to entertain Sunita and her friends at the mansion of his "uncle". His deceit is nearly exposed by the arrival of the real owner of the mansion, Kunwarsahab Mahender Singh (Premnath), but he too surprisingly plays along and covers for Anil, and the two soon become good friends.
Sunita invites Anil and his "uncle" to meet with her father (Raj Mehra) and discuss their marriage. Anil requests Kunwarsahab to reveal the truth about him to Sunita and her father, explaining that Rupa had deeply fallen in love with him during her stay at The Park Hotel. She aggressively pursued him despite his disinterest in her and her engagement with Ramesh, who became extremely furious on seeing her with Anil and threatened to kill Rupa in front of him. On the night before her fall, Rupa had telephoned Anil, informing that she desperately needs to meet him, but Anil had refused to open the door of his room when Rupa banged on it at midnight, pleading him to let her in. A few moments later, Anil was shocked to hear Rupa's deadly fall from the third floor of The Park Hotel. As Kunwarsahab keeps up the pretense instead and agrees on the alliance, Anil, with no other option, writes a letter to Sunita, revealing that he is none other than her enemy, Rocky, but that he never seduced her sister and had absolutely no idea that she would kill herself over him. Sunita is aghast when she reads the letter and severs ties with Rocky. As he unsuccessfully attempts to pursue and convince Sunita, Anil is approached by an investigating police officer, Inspector Das (Iftekhar), who reveals to him that Rupa had not jumped off the third floor of The Park Hotel out of desperation, but was cold-bloodedly thrown off to her death in reality.
Shocked at learning this, Anil suspects Ruby to be Rupa's murderer as she had intercepted his telephone call with Rupa and was always jealous of any other girl coming close to Anil. He confronts Ruby and tries to make her confess her crime, but an unknown assailant climbs up to the window of The Park Hotel through the drainpipe, and shoots Ruby fatally right in front of Anil's eyes. Ruby dies in Anil's arms and Inspector Das takes him into police custody, warning Anil that the shooter was aiming for him, not Ruby, since he believes that Anil is progressively getting closer to discovering the real killer. Inspector Das shows Anil an expensive button discovered in Rupa's hand as evidence, which he believes she tore off the killer's overcoat during the time of her fall. Anil then suspects Ramesh to be Rupa's murderer but the latter denies the accusation from Inspector Das, although he was present at The Park Hotel on the night Rupa died, and is also seen secretly bribing someone dressed as Ruby's killer with a bottle of whiskey. Meanwhile, as Anil returns to his hotel room, a mysterious woman (Neeta) visits him, instructing him to take her car and visit a restaurant at the bottom of the hill, where he will find the culprits of Rupa and Ruby's murder. Anil does so, but finds out while driving that the car has failed brakes, and jumps out of the car as it plummets down a cliff.
While Anil is declared dead by Inspector Das and others, he secretly visits Sunita, convinced that Ramesh killed both Rupa and Ruby and is now trying to kill him with the mysterious woman's help. Anil enlists the help of Sunita, who now believes his innocence and takes him to meet Ramesh at The Park Hotel. While Sunita is away, Anil sees the same mysterious woman having released him in the car with failed brakes and pursues her. He is surprised to witness her drive into the mansion of Kunwarsahab, who is shocked at seeing Anil there and insists that he must stay with him in the night for not being safe anywhere. He forcefully takes Anil into an old room in his mansion and instructs him to stay there till morning. After Kunwarsahab's departure, Anil begrudgingly goes through a closet in the room, searching for clothes to change into, when he is shocked to find an overcoat of Kunwarsahab with the exact same buttons that Inspector Das had shown him and the overcoat is also missing a button. Realising that the killer of both Rupa and Ruby is none other than Kunwarsahab, Anil feigns an escape through the window, just as Kunwarsahab enters the room to kill him in his sleep along with the mysterious woman, Sabina, who is his girlfriend and a widow with two children.
While Kunwarsahab leaves to search for him, Anil threatens Sabina at knifepoint and forces her to confess the truth about Rupa and Ruby's murders. He telephones Inspector Das at the police station, and Sabina confesses to him that Kunwarsahab had an extramarital affair with her which his wife discovered and attempted to shoot her, but Kunwarsahab accidentally shot his wife dead while trying to tackle her. While Kunwarsahab and Sabina were burying the dead body of Kunwarsahab's wife in a secluded place, Rupa happened to witness them while she was on her way to meet Anil. She escaped to The Park Hotel with Kunwarsahab in pursuit and banged on the door of Anil's room, pleading him to let her in. However, Anil was unaware of Rupa's predicament and refused to open the door for her, causing Kunwarsahab to pick Rupa up and mercilessly throw her off the third floor to her death. At that very moment, Kunwarsahab returns to his mansion and overhears Sabina's telephonic conversation with Inspector Das. He shoots Sabina to her death and then attempts to kill Anil, but goes over the ledge of his mansion in the ensuing scuffle between them. Anil holds onto Kunwarsahab, asking him to surrender himself to the police, who have arrived at the scene with Sunita, her father and Meena. However, Kunwarsahab chooses to die instead and lets go of Anil's hand, falling to his death from the third floor of his mansion. The film ends with Anil and Sunita returning to Delhi from the same train where they met the first time.