Shiva (Karthi) is a young, carefree, unemployed man staying in Bangalore. He has a loyal group of friends including his best friend, a young woman named Priya (Sonia Deepti) with whom he shares his feelings. His friends are determined to get him a job. One day he sees a young, beautiful woman named Charulatha (Tamannaah), who is also looking for a job. Shiva is immediately attracted to her. He subsequently spots Charulatha on various occasions and follows her, but loses sight of her each time. He even misses a job interview Priya has arranged for him.
Later, as Shiva waits at the railway station to pick up a friend and owner of the Mitsubishi Lancer Shiva and his friends use, he is confronted by a tense Charulatha, accompanied by her uncle. They assume that Shiva is a cab driver and ask him to take them to Chennai. An excited Shiva accepts the offer and takes them. While stopping to refuel the car, Charulatha suddenly requests Shiva to drive on, leaving her uncle behind; Shiva does as she wishes and takes off. She first asks Shiva to drop her at the airport but she misses the flight and later at a railway station, she is unable to go by train,so she asks Shiva if he will take her to Mumbai by car.
Shiva instantly agrees and drives her to Mumbai. Shiva tries to get into a conversation with Charulatha. She initially refuses to talk, but eventually gives in and tells him about her background. It comes to light that Charulatha’s mother, who had always supported her daughter, died after a violent altercation with her father; since then her father has tried to force Charulatha to marry an unknown man of his choice. Not willing to bow to her father’s wishes, she had escaped from home, but was later found by her father’s business partner, Jayaraman, her supposed uncle. He was about to take her to register the marriage arranged by her father when Charulatha tried to escape, leaving him behind at the filling station. Now she wants to head to Mumbai to stay at her grandmother’s home.
However, she is being followed by a gang, led by a furious Telugu-speaking lady. Shiva manages to lose the pursuers and decides to change the route in order to avoid the gang, but encounters a second gang. He realizes that this gang is not following Charulatha, but himself, as they are the henchmen of a Mumbai-based gangster Baali (Milind Soman). He recalls an incident that happened some years ago in Mumbai, when he stayed there at his friend Poochi’s (Jagan) house. He had beaten one of Baali’s men, who had attacked him, and later Baali himself, not knowing about him and his reputation in the city, and returned to Bangalore. Both gangs are following the couple to achieve their own ends. After reaching Mumbai and experiencing a series of events, they end up at Poochi’s house. Poochi finds out where the grandmother lives and Shiva brings Charulatha there. Shiva, unable to bear the thought that the journey is complete, leaves silently only to find Charulatha on the road. After hesitating, she reveals that her relatives had spoken ill about her parents, which prompted her leave, not wanting to push the matter further. While in a state of doubt, they are attacked by Baali’s gang, who have teamed up with Jayaraman.
Shiva saves Charulatha from the clutches of the goons by single-handedly overpowering them. While on their way back to Bangalore, his friends arrive. Priya, whom Shiva has called often, tells Charulatha of his feelings for her. Charulatha reciprocates Shiva’s love, as she too has fallen for him during the journey, thus both unite.