A couple leads a content life with their daughter in Bengaluru. However, when the daughter is sexually assaulted by an inebriated stranger, the couple sets out to seek justice for her.
Rasa (Atharvaa) is a carefree young man living in a rural village in the Madras Presidency during the early days of the British Raj. Orphaned at a young age, he is brought up by his grandmother. Angamma (Vedhicka), a local girl falls for him and takes pleasure in bullying him. When she finally confesses her feelings for him, they become intimate and soon reveal the fact that they are in love before the entire village and also get into physical relationship. Angamma’s mother objects as Rasa is unemployed and irresponsible, making him unqualified to become anyone’s husband.
Rasa then goes to the nearby village in search of work. He comes across a friendly Kangani, who then follows Rasa back to his village. The Kangani offers a work for the villagers at the British tea plantations at the hillside. He promises them proper accommodation and high wages. Like many of the villagers, Rasa signs up with the Kangani, hoping he can send home money every month for his ailing grandmother. Both Angamma and his grandmother are sad to watch him go.
A serial killer (Anurag Kashyap) disrupts peace in Bengaluru by kidnapping. He goes by the name of the highly notorious serial killer Rudra, who was announced dead five years ago. After another such case, in which the CBI are involved headed by Anjali (Nayanthara), he goes live and declares himself as the deceased Rudra. He insists that Rudra is still alive and announces that he is now back in action. Anjali, who dealt with the earlier case of Rudra, is appointed to deal with him.
In a parallel storyline, Anjali’s brother Arjun (Atharvaa) is facing a rough phase in his relationship. The film flashes back to his life with his lover Krithika Rao (Raashi Khanna) and how they eventually break up. To make it up to her, he, with his friend Vinoth (Ramesh Thilak), travels to Bangalore to meet her and enters the deadly scene between Rudra and Anjali. The cat-and-mouse game gets too intense when Rudra brings Arjun into the game by kidnapping Krithika and demanding a ransom from her father. In an effort to save Krithika, Arjun follows Rudra’s orders and gets framed as “Rudra”, making things much more complicated for him. Anjali is suspended, and Officer Narayan (Devan) takes over the case.
Raghavan (Sarathkumar) and Velu (Vadivelu) work as cooks in a non-veg hotel. Raghavan loves Geetha (Kiran) who is the daughter of a rich man (Vijayan), but her father is against this love and insults him as a poor man. Raghavan challenges that he will be rich in a year. There is a subplot in the story, for Meenakshi (Sharmili), a daughter from a rich family; she is the apple of the eye of the family. Meenakshi ran home with her lover Raju, who worked as a driver to her house. He tells that his friend Dinesh will help them. However, Raju escaped because he saw a bad dream where he is killed by her family as if it will happen in reality. Due to that he vanishes. Raghavan understood her plight and helps her.
The film revolves around a group of villagers from Maranur, India, and their clash with a neighbouring village leader as their community begins to prosper. Soon, money and greed threaten a will for peaceful coexistence between the two rivalling communities. The main theme involves the role of the caste system and how the younger generation strive to overcome it.