The film opens in UK where Colonel Viren Nanda (Jimmy Shergill) goes to meet a wanted terrorist Omar Zafar (Danny Denzongpa) in his holding cell. As Viren informs Zaffar that he will be extradited back to India for his crimes, Zafar's men enter his holding cell, led by Hamid Gul (Jaaved Jaffrey), murdering all guards around them, with Zaffar then murdering Viren by shooting him and then burning him. As Zaffar escapes in a helicopter waiting on the roof, he puts a $5 million reward for someone to steal the Koh-i-Noordiamond from the Tower of London, but with one condition – the thief must be Indian, to hold up a new extradition treaty between India and UK. Soon after, a man named Rajveer Nanda (Hrithik Roshan) steals it, and when Zaffar's men are informed of the theft, they travel to Rajveer for the deal. Although they initially travel with the $5 million reward, Rajveer informs them that he now wants $20 million for the deal. Following the disdain of the comment made by Rajveer, a fight breaks out between Rajveer and Zaffar's men after which Rajveer flies away. After Rajveer escapes, a CCTV footage of him is captured, showing that he is in Shimla. Following Rajveer's escape, he sees Harleen (Katrina Kaif) sitting in a restaurant, who is there waiting for her internet date, "Vickie", to show up. Rajveer enters the restaurant posing as "Vickie" and woos her over. He convinces Harleen to use the bathroom and whilst she is in there, Rajveer fights the remaining men and leaves the restaurant, much to the dismay of Harleen. As she drives home, Harleen accidentally runs over Rajveer, who asks her to stitch up a gunshot wound sustained during the fight. Rajveer then gives Harleen drugged water, with her complying with what he says about the government officials, informing her about where to find guns underneath car seats and what they will say about him.
The next day, the government officials with Zorawar (Pawan Malhotra) visit Harleen at her bank and threaten her to come with them. They tell her that if she does not accompany them, then they will reveal everything to her colleagues. Harleen decides to go with them to the police station. In the car, Zorawar tells her that they are not going to the station but they are taking her to a safe place instead. Harleen remembers about the gun that Rajveer had told her of. She engages the other official in small talk and finds the gun. She threatens both the officers to stop the car and let her go. At the same time, Rajveer appears on a bike and a chase sequence ensues. Both Rajveer and Harleen find a car and escape. When Rajveer goes out to shoot the goons, Harleen escapes and then bumps into her boss, Karan. She tells him about Rajveer and how random people are firing at her. Rajveer follows her. Karan tries to protect Harleen from Rajveer. He annoys Rajveer and gets shot by him in the leg. Harleen is exasperated but leaves with Rajveer again lest he shoots any more people.
In the car, Harleen and Rajveer get into an argument. Harleen states that she wants to go home and that she did a huge mistake by trusting him. Rajveer angrily decides to let Harleen go and hands over the car keys to her. He tells her that he has no other motive then protecting her. She feels guilty and decides to stick to him. They begin to drive again in silence. Rajveer checks a location on his phone which Harleen notices. He then tells her that he has not killed an innocent person before this and does not want her to die. He tries to convince her to come with him for dinner.
They go to Pizza Hut where Rajveer realises that he has no money to buy food. They get into an argument about it. He teases Harleen about her internet dating and she slaps him. He threatens to shoot the server (Aditya Prakash)and she eventually pays for the pizza. Harleen asks him about the crime that he has committed and Rajveer shows her the Koh-i-Noor much to her surprise. She has a hard time believing that he is indeed a thief. As she comes to know about Rajveer, they realise that they were followed by Zorawar who says he has the restaurant surrounded with his men and will not be afraid to shoot Rajveer if needed to. As the officials convince Harleen to go with them, Rajveer tells Harleen that he cannot let her go with them. He shoots her with a tranquiliser dart and they both jump out of a window and escape.
Harleen slips in and out of consciousness as Rajveer continues to take her to safety. She wakes up in a beach shack wearing a bikini top and hot pants. She angrily asks Rajveer as to who changed her clothes and he confesses that he did it. She is irked beyond words. She beats him and bites his hand. Harleen then takes Rajveer's phone to call her grandmother, unbeknownst to her it allows the Government officials to track their position. After a shootout occurs between Rajveer and the Government officials, he escapes with Harleen with a help of a sea bob and a fly board.
Harleen wakes up the next morning in Prague. As Rajveer was able to successfully lead the escape of them both, Harleen now entrusts Rajveer, subsequently falling in love with him. When Rajveer goes out of his hotel with Harleen, he sees that they are wanted by Interpol. Some policemen come at the moment and Rajveer ends up kissing Harleen passionately. Rajveer tracks Hamid Gul at a casino. Although he was to go alone, Harleen insists to take her along, to which he agrees. Staging a ploy for Gul's attention, Harleen and Gul meet in the hallway, who tells her that a romantic candlelit champagne drink is waiting for her on the roof of the casino. Following this, Rajveer visits Gul at the top of the casino, a fight ensues regarding the whereabouts of Zaffar and he ultimately kills Gul. In the meantime, Harleen is caught by Zorawar and is taken to the Indian Embassy in Prague, where Zorawar says that Rajveer actually came to Prague to find Gul. Harleen is asked to get the Koh-i-Noor back. That night, the two meet on a bridge, where Harleen says that the trust between them is broken. Rajveer activates the tracking device himself, allowing the officials to surround them. Rajveer gives the Koh-i-Noor to Harleen and jumps from the bridge and is assumed dead.
Harleen then returns home and remembers an address that Rajveer had listed on his phone. At the address, Harleen meets Rajveer's father (Kanwaljit Singh) and his mother (Deepti Naval). At the house, Harleen sees photos of Rajveer (Jai) and Viren, who are later revealed to be brothers and Rajveer's mother revealing their back stories. Although it is confirmed that Viren was murdered, Rajveer's father says that he does not believe the story the Army told him, saying that Rajveer had drowned despite being a swimming champion in his youth, he was the only student who was able to cross the lake in only one breath. On her way home, Harleen is kidnapped by Zaffar, who knows that the diamond was a fake. Zorawar is then revealed to be Zaffar's right-hand man, and gives Harleen a truth-revealing drug to reveal the location of the real diamond. Harleen tells that Rajveer would have survived and is coming to kill Zaffar. Rajveer, silently kills every guard posted outside and places time bombs in every corner and enters the room. Zaffar then orders his men to beat Rajveer but before Zaffar is able to kill him Rajveer informs that the Koh-i-Noor was not stolen at all and it was a joint operation betweenMI6 and the Indian Secret Service to get Zaffar. The time bombs go off and destroys the castle. But Zaffar manages to escape and captures Harleen again,after making Rajveer crash. As they escape with her, Rajveer follows them with a F1 car and catches up to them. Zaffar enters a flight with Harleen. Killing the rest of Zaffar's men including Zorawar, Rajveer shoots at the flight blades evidently grounding the plane. Rajveer soon boards the plane and a final bout takes place between him and Zafar. After throwing him to the flames, Rajveer frees Harleen. When they are escaping from the aircraft, Zaffar emerges from the flames again and shoots Rajveer. Rajveer pushes Harleen out of the aircraft and a second bullet hits him. He then grabs the axe and charges towards Zaffar and kills him. When the aircraft is about to explode, he jumps out.
He loses consciousness and is about to drown when Harleen grabs his hand. The authorities air lift an injured and unconscious Rajveer and Harleen.
Rajveer then wakes up in hospital, where his boss Narayan (Vikram Gokhale) is sitting across him waiting for him to wake up. He congratulates Rajveer for successfully completing the mission. He rues about the fact that his brother was murdered and that his parents will never get to see him again. Also, he informs Rajveer that Harleen has been sent back to her home and he has to forget about her because she can become a threat to his life and also his weakness. Rajveer is also told that he will be shifted to a safe facility the next day. After the chief leaves, a nurse arrives and gives Rajveer a medicine to drink. As soon as Rajveer gulps down the medicine, he feels giddy and asks the nurse about it. The nurse turns around and removes her mask revealing that she is actually Harleen and the medicine was a sedative meant to knock Rajveer out. A surprised Rajveer tries to say her name but Harleen asks him to keep quiet. Rajveer faints and Harleen escapes from the hospital along with him. He continues to slip in and out of consciousness until the next morning. He wakes up and Harleen tells him that his one-day has arrived. Rajveer realises that she has brought him to his house. He silently thanks her, and they both meet his parents.