Dhanush, Sonam Kapoor
A. R. Rahman
Kundan Shankar (played by Dhanush) is a strong believer of God and the son of a Tamil priest. Since his childhood days, Kundan has had a strong one-sided love for Zoya Haider (played by Sonam Kapoor), a Muslim girl residing in Varanasi whose father is a professor. Being kids and having crushes makes it pointless but a few years later, Kundan is steadfast in his love for Zoya. When she is at school, he always attempts to be around her and hold her hand but gets slapped several times in the process. Zoya finally changes her mind because of Kundan's constancy of affection and attraction.
Zoya's family is orthodox, preventing the lovers from being together. By the time Zoya moves to Aligarh for her further studies, Kundan harmonizes with Zoya's family, assisting them with various works especially pertaining to house. The film shifts its centre when Zoya gets into Jawaharlal Nehru University and through her, the idealistic and political culture of the Delhi is explored. She discovers a long-lost strength as she confronts and then falls for student leader Jasjeet Singh Shergill (disguised as Akram Zaidi for political reasons in the film; played by Abhay Deol) in Delhi.
After a period of eight years, Zoya returns to Varanasi. Kundan again attempts to ask Zoya for her love but she is reluctant, revealing that she is in love with Akram. Zoya then urges Kundan to convince her family about her marriage with Akram. Initially refusing the plans because he still loves her, Kundan eventually agrees to it. Kundan gets his work done and the wedding of Zoya and Akram is arranged. Kundan promises Zoya that he will also tie the knot with another girl and will forget her. Kundan proposes to his childhood friend Bindiya (Swara Bhaskar), who has had a crush on Kundan since their childhood days, for marriage.
On the day of their marriage, Kundan finds out through a newspaper article that Akram is a Hindu, whose actual name is Jasjeet Singh Shergill. This enrages Kundan as Zoya had used their religious differences to convince him that their match was not possible. In a separate flashback it is shown that Zoya, despite Jasjeet's misgivings about the plan, convinced him to portray himself as Muslim to marry her. Enraged again, Kundan reveals everything to Zoya's parents thereby interrupting their marriage ceremony. Later, Kundan is informed by his friend that Zoya tried to commit suicide and is in a critical condition. He rushes to the hospital where he is also informed that Jasjeet was mercilessly beaten by Zoya's relatives and is also critical. Later Jasjeet's parents take him back to his village and thank Kundan for helping him. Kundan tries to redeem himself by taking Zoya to Jasjeet's village. However, he is devastated to find that Jasjeet has succumbed to injuries, finally making Kundan understand that his one-sided love has resulted in an innocent man's death. Kundan also forgets about his own marriage with Bindiya, which was supposed to happen the same day as that of Zoya and Jasjeet. For this reason, Kundan's family disowns him.
Kundan then becomes homeless and begins visiting various religious places and volunteering in their activities so that he can atone for his sins. During one such visit to the banks of Ganga, a man advises him to do the right thing rather than running away from his sins.
Motivated, Kundan locates Zoya to Jawahar Lal Nehru University, where she is spearheading the activities of the political party "All India Citizen Party" (AICP), created by Jasjeet. Kundan joins the nearby canteen and serves the people of the party, all the while trying to get Zoya's attention. Over time, Kundan becomes popular among the party due to his simple nature. In between Kundan also helps the party in negotiating some tough situations by using his simple yet witty tricks. Slowly, he emerges as a popular face of the party, disturbing Zoya. She holds a grudge that the person who is responsible for Jasjeet's death is now taking his place. She also tries to instigate party members against Kundan but Jasjeet's sister Rashmi (played by Shilpi Marwaha), who is also Zoya's best friend, tells Kundan to continue, as he is the best choice for fulfilling Jasjeet's dreams.
Kundan, however, only wants Zoya to forgive him. He silently follows Zoya's instructions despite them resulting in harm coming to him. The Chief Minister (played by Sujata Kumar) tells Zoya she must seek revenge on Kundan so as to take the place Jasjeet/Akram held for the AICP. To get back the position, she tells her to let Kundan get injured as he delivers his campaign speech for the party. Zoya gets brainwashed by this plan and as the Chief Minister desired, Kundan is hurt badly and sent to ICU, thus fulfilling Zoya's revenge.
Zoya slowly begins to understand the extent of Kundan's love and at a press meet following Kundan's injury, reveals that the plan was plotted by her and the Chief Minister. Zoya leaves the press meet in agony and finds out through a policeman that Kundan was aware of the plot and still let himself be injured. Shocked by this fact and ultimately realizing her love for Kundan, she rushes to the hospital to finally confess her feelings to him. However, Kundan dies.
In a final voice over, Kundan says he can be born again and again in the same Benaras with the same surroundings, fall in love with a girl like Zoya again, and become a Raanjhaana with her love.