The film opens at a party where Anant Welankar (Om Puri), a police officer, meets Jyotsna Gokhale (Smita Patil), a lecturer in literature at a local college. Anant is a sub-inspector with Bombay police. They seem to hit it off despite some initial skirmishing about ideology, and the friendship blossoms into a relationship.
Anant brings diligence, enthusiasm and a definite idealism to his job. But the job is harsh. There is a deep nexus between the local mafia, the cops and the (corrupt) politicians. Honest himself, Anant falls among the lower rungs of the police hierarchy and has very limited scope of authority on the state of affairs in his area.
When Anant arrests three common thugs, he is asked to meet with their boss, Rama Shetty (Sadashiv Amrapurkar), a don in the local mafia. Anant refuses all of Rama Shetty's attempts to get his men out or to entice Anant to join him. Shetty decides to watch over Anant.
Some time thereafter, a meek fellow from a local slum lodges a complaint about some ruffians who harass his wife. Anant finds them, locks them up, and administers a severe beating. As a fallout, the local MLA asks for Anant to be suspended.
Anant's boss, inspector Haider Ali, explains to a mystified Anant that the ruffians were the MLA's henchmen, providers of muscle during elections and political rallies. Anant is defiant with a clear conscience (he did nothing wrong) and ready to face a tribunal. Haider Ali explains that it will hardly get that far. Tribunals are either delayed indefinitely or are rigged (by corrupt politicians), and suspension during that time is a permanent black mark on one's record (for no other politician will be willing to deal with such a troublemaker).
Anant is initially baffled but goes along with Haider's plan to bring in Desai, a mediator or middle-man {see Satyajit Ray movie of same name} with connections in New Delhi, the "Centre" or national seat of power. Desai invokes higher powers to quietly cover up the matter. Anant's morals are shaken by this incident: He had to use means barely legal to uphold his righteous actions upon criminals.
Anant reflects upon his childhood. His father (Amrish Puri) retired as a Faujdar (constable) in the village police force. His father was a hard and violent man, quick to slap or beat his wife on the slightest pretext. Anant recalls looking on and being powerless to intervene. When Anant graduates college, he expresses his desire to pursue higher education but is forced into joining the police force.
Things get interesting when Anant finds one of Rama Shetty's goons, badly beaten, burnt and left to die. Anant brings the man into the hospital and takes his statement where he names Rama Shetty and others who inflicted this assault. Anant storms into Rama Shetty's rooms to arrest him. But Shetty is unfazed. He makes a simple phone call to a high ranking cop who immediately asks Anant to back off. Anant cites the context and the overwhelming evidence but is still ordered to step away. A consternated, resentful and hapless Anant leaves, feeling intensely humiliated.
Haider Ali explains yet again: Rama Shetty plans to run for city council in the upcoming municipal elections and simply cannot afford to let a petty matter distract his ambitions. Anant is horrified and enraged, and takes to drinking. His relationship with Jyotsna suffers. He is distraught when he is sent to provide security cover for Rama Shetty's campaign rallies.
He suffers another career setback when he leads an assault team to capture a dangerous daku (armed bandit) in the hills outside Mumbai, and the credit for the arrest is ultimately handed to another officer. His relationship deteriorates further and he takes to drinking fairly heavily. When Jyotsna confronts him, he confides in her.
Jyotsna tries to be supportive and suggests he consider another career. (She is motivated by recent news stories about police brutality and has decided that she will not marry a police officer.) He has always tried to do the right thing, but his well-intentioned actions always seem to be thwarted by the tentacles of corruption in the police force or the political strata. In the alcoholic trans a prisoner is killed by Anant in the jail when he uses 'third degree' and now Anant is not only likely to be arrested and jailed, but also has to lose his entire career. Finally he surrenders to Rama Shetty for political protection. Now, in the clutches of Rama Shetty, Anant has to obey his every order and humiliation. The dirty conditions put by Rama Shetty angers Anant and he kills Rama Shetty and then surrenders voluntarily to the Police for any punishment.
According to film expert Rajesh Subramanian, Amitabh Bachchan was first offered the lead role. The superstar, due to tight schedule, declined it. Om Puri was cast as Anant Welankar and it went on become a career defining role.