Two honest and bold police officers Adhi Narayanan, (Kamal Hassan) and Abbas (Arjun Sarja) devise a masterful plan to bring a terrorist group in control, and send two secret vigilance officers, named Anand and Shiva on an operation called Operation “Dhanush”. The objective is to infiltrate a terrorist group headed by a man named Badri, and relay information back to Abbas. After a year while relaying information to Abbas, Anand gets caught, but he commits suicide before the terrorists can interrogate him. With information relayed by Anand, Abbas and Adhi know that the terrorists are picking up someone important and going to Trichy.
Velu (R. Sarathkumar) is living happily with his sister and friend Pazhani (Vadivelu) in Palani. He stays away from all wanted troubles and is forced to resort to fighting to defend his sister from the local rowdy Raghavan (Vincent Asokan). A flashback follows where it is revealed that Velu is a military officer and his sister is actually the sister of his best friend, Police Officer Murugan (Kalabhavan Mani) of Chennai. It is also revealed that Velu had maintained a low profile to protect his sister from his foe Naachiyar (Kota Srinivasa Rao) whom he had left crippled before he went into hiding.
The story revolves around a Tamil pop singer Inderjeet based in Bangalore who has a large female following. The movie opens with the death of a back-up dancer, Sandhya, in Inderjeet’s group. Soon a police detective is put in charge of the investigation. Although the police suspect Inderjeet as he is very short-tempered, they have no evidence linking him to the crime. Meanwhile, Divya, Sandhya’s sister, arrives at her aunt Dr. Prabhavathy’s house to find out the truth about Sandhya’s death. She goes to meet Inderjeet but is put off by his arrogance. She talks to his manager, Dr. Harichandra Prasad, and other musicians who all have differing opinions about Sandhya.
Three amateur thieves plot to kidnap the young son of wealthy Chettiar (Santhana Bharathi) from school. They do a trial run. However, on the eve of the kidnap, the guy whose job is to operate a crane in this plan is hospitalized. The services of Avinasi a.k.a. Mumbai Xpress (Kamal Haasan), brother of Kovai Sarala, a deaf stuntman performing daredevil bike acts, is roped in. Twists and turns take place where the other two gang members are hurt, and invariably, our Mumbai Xpress is left to perform the task all by himself. He kidnaps a wrong boy Daddu (Hardhik), the illegitimate son of Ahalya (Manisha Koirala) and police officer Rao (Nassar), but manages to get a huge ransom from Chettiar by default. A brawl takes place between the original kidnap planners – Chidambaram (Pasupathy), Johnson (Vaiyapuri), and Avinasi – in handling Ahalya’s child, but Avinasi delivers the child unhurt to his mother.
Kaakki Sattai has Murali (Kamal Haasan), a young man who trains very hard to become a police officer. Uma (Ambika) is his neighbour and they fall in love with each other while Uma supports Murali to achieve his goal but he is rejected after the physical test due to not having influence or money.
Angered by the rejection, Murali turns into a local rowdy. He causes trouble in his district and comes to the attention of a notorious smuggler and murderer, Vicky (Sathyaraj) and his partner Anand (Rajeev). After initial conflict between the two, Vicky recruits rowdy Murali into his gang. Murali becomes his most trusted member. He grows intimate with a girl, Anita (Madhavi), who is looking for personal revenge against Anand.