On a flight from Chennai to Delhi five passengers retrieve weapons hidden in the toilet and use them to hijack the plane. An engine is damaged during the struggle with the pilots so they make an emergency landing at Tirupati Airport. Government authorities arrive. The hijackers demand INR 100 Crore (c. US $22,000,000), release of their imprisoned leader Yusuf Khan (Sricharan), and a fresh aircraft for their escape.
National Security Guard Major Raveendra (Nagarjuna) recalls the loss of a valued comrade at the shootout when he captured Yusuf Khan, and regrets not killing the terrorist at the time. He urges the government to allow a commando operation, but officials fear risking passengers' life, not trusting Raveendra's team. The major is frustrated when the government vacillates and it seems that Yusuf Khan might be released. Inside the flight the passengers fall into groups discussing their past lives and religion.
One of the terrorists becomes sentimentally attached to Afshana, a little girl returning to Karachi after her heart operation. The terrorist, however, is warned by his comrade to not become too attached as his main duty is to carry out the current tasks which include killing the passengers at the end no matter what. Another passenger frequently irritates the terrorists with bitter questions about their motives, in which he is supported by Jagdeesh, a retired army colonel. Time passes and tensions rise, until one of the passengers Praveen (a drug addict) attempts an escape but is shot down by a terrorist who warns the authorities to act soon.
Raveendra's colleague Nawaz Khan (Bharath Reddy) discovers that the missing cleaner who prepared the toilet of the flight before its departure has been identified by Tamil Nadu Police. Ravi and Nawaz go to find the cleaner in the hope of getting information about the nature of weapons that were left for the hijackers. After a chase in Red Hills they capture the man, who confesses his involvement in the plot and also gives vague information about the size of the weapon that he placed in the toilet. Ravi and Nawaz deduce that it must be a plastic explosive.
On his return Ravi is told the government has decided to release Yusuf Khan. But Yusuf dies in an accident while being transported to the airport. Ravi asks the officials to be very confidential about this information so that they can plan an assault without the terrorists' knowledge. However, a reporter disguises himself as an assistant to a senior police official, and so gets close to the aircraft. He records footage of the flight through his pen camera and overhears two officials talking about the accident of Yusuf Khan in the restroom. The terrorists get alarmed. Despite attempts to contain the news, the media leak it and one of the terrorists kills the passenger Subash (Kumaravel), seeking proof that Yusuf is alive, failing which one passenger will be killed every half-an-hour. Ravi later arranges for a scared civilian Ranganathan (Sricharan) to pose as Yusuf to make the terrorists believe that Yusuf is alive and getting treated at the hospital.
Meanwhile Ravi plans an operation to rescue the victims and christens it as Operation Garuda. Through a cleaning lady he secretly sends a mobile phone onto the plane in a food packet, so he can exchange information with Colonel Jagadeesh. Ravi plans to shoot the terrorists during their transit to a new flight by asking the passengers to bend down when they get a signal. The firing succeeds and four of the five terrorists are killed. The last terrorist is killed with help of the passengers Chandrakanth (Babloo Prithviraj) and Vinod (Rishi). The plastic explosive is found in the girl's bag. Ravi throws it away which explodes. The operation ends with the Prime Minister appreciating Ravi and the passengers heading to their destination.
The passengers happily take leave and farewell each other and agree to meet again. The terrorists' names are revealed to be Yasin (the leader), Munna, Omar, Anwar, and Abdul.