ACP Vijay Khanna (Ram Charan) is a brutally honest police officer who has been transferred yet again by the system for chasing the corrupt underworld goons. He is continuously disturbed by the killing of his parents years back. He keeps remembering a man in a black raincoat on a white horse and with a tattoo on his right arm killing his parents on Vijay's birthday for filing a case.
Vijay was brought up by his uncle and was always absent on his birthdays. He is in charge of a case where the district collector has been murdered and burned to death. The key eye witness Mala (Priyanka Chopra) has seen the murder by Teja's (Prakash Raj) Gang and refuses to co-operate. Teja is the head of an oil mafia operation and doesn't want Mala alive.
Vijay manages to convince Mala to give a statement which makes her perpetrators come after her. He gives her shelter in his house to protect her and she starts to like him while Vijay does not reciprocate the same. This includes her giving him a potato and egg for lunch at his office and then annoying him by celebrating his birthday. He shouts at her and she begins to cry. Vijay tells her that he did not want to celebrate because his parents were killed on the very day and reveals his past to her. He finally reciprocates her love as he realised that Mala is slowly becoming an important part of his life.
He also encounters Sher Khan (Sanjay Dutt/Srihari) who is into buying and selling of illegal cars. Seeing Vijay's honesty and determination, Sher Khan turns over a new leaf and mends his ways to transform into a person who now only goes by the book. He has made Vijay a friend for life and will do anything to help him out. Vijay also encounters Jaydev a.k.a. JD (Atul Kulkarni/Tanikella Bharani), a reporter who had written bad comments about Vijay in the newspaper.
Seeing Vijay's honesty and integrity, Jaydev becomes an admirer of Vijay and begins to give him all the information he has regarding the oil mafia. Meanwhile, Kataria (Bikramjeet Kanwarpal) the man who murdered the collector has been caught by Vijay. Kataria is revealed to be Teja's man and he reveals that they steal petrol and oil from container trucks, add kerosene in them and smuggle them around and outside the country. Vijay uses this information and puts Kataria in custody but the next day he is found murdered in custody.
In the middle of this, Vijay also finds about a man Prashant Khanna, who was killed years back by Teja. Due to certain incidents which gave Vijay wrong informations about the oil mafia Teja is handling, Vijay is suspended till the investigation is done with. Now Vijay warns Teja that there are no seniors or rules that bind him and now Vijay will finish Teja in his own style. Slowly, Vijay begins to destroy almost all of Teja's oil refineries. But Mala says that all these activities that Vijay is doing can have dangerous consequences.
One night, Vijay and Mala go to a restaurant for dinner where Vijay gets attacked by two of Teja's men in the bathroom. Vijay kills both the men and calls Teja and warns him that even if he sends the rest of his 198 men (it was earlier mentioned by Teja that he has 200 workers under him), nothing will happen to Vijay. A few days later, Sher Khan invites Vijay and Mala to a party. Later on, when they are returning home, they are attacked once again by ten of Teja's men. Vijay manages to lock Mala in a small room there and gets badly injured fighting them.
He is almost killed but just in time, Sher Khan comes there, handles the rest of the goons and along with Mala, takes Vijay to the hospital. The next day, Teja comes there and criticizes Vijay saying that he is one who can only talk and doesn't have the guts to face Teja. After he leaves, Mala finally tells Vijay to finish Teja once and for all. That night Teja's men along with Bosco (Ankur Bhatia) kill Jaydev and the whole city begins to panic.
Meanwhile, two sub inspectors who work under Vijay gives Sher Khan information that the night Kataria was murdered, an inspector, Saalwe had arrested a man for a petty case. But Saalwe did not record the case and so they suspect Saalwe and the man who he arrested had killed Kataria. So, using some of his informers Sher Khan finds Saalwe and Teja's trusted man Bosco (Ankur Bhatia) who was hiding himself and Saalwe in a colony.
Then he puts them in front of the commissioner and they agree that they had killed Kataria by breaking his neck and they had done it on Teja's saying as he feared Kataria might leak all the information about his gang. The commissioner realizes Vijay's Innocence and claims Teja a wanted criminal. Out of fear, Teja runs away into an old mine with Mona (Mahie Gill), but Vijay manages to track him down. Teja manages to get Vijay at gun point and pulls his coat's sleeve back.
Then Vijay notices a tattoo on Teja's arm and realizes that he is the very one who killed his parents. Then Vijay says that Prashant Khanna who Teja killed years back was Vijay's dad. Teja is shocked and reveals that Prashant had filed a case against him and so Teja had to kill Prashant. In a fit of rage, Vijay begins to beat Teja badly. Vijay then breaks Teja's arm and kicks him into a bundle of petroleum barrels and shoots the barrels, causing Teja to die in the blast. The government announces all the wealth to be given to Mona, who was also said to be in all of Teja's nefarious activities.
The film ends with Sher Khan and Mala coming to visit Vijay at the station, Mala finally being able to cook some food for him and Vijay smiling at Sher Khan when he sees a drug mafia case coming on TV.