Two white racists, Billy Ray Cobb (Nicky Katt) and Pete Willard (Doug Hutchison), come across a 10-year-old black girl named Tonya Hailey (Rae'Ven Larrymore Kelly) in rural Mississippi. They violently rape and beat Tonya and dump her in a nearby river after a failed attempt to hang her. She survives, and the men are arrested.
Tonya's father, Carl Lee Hailey (Samuel L. Jackson), seeks out Jake Brigance (Matthew McConaughey), an easygoing white lawyer. Carl Lee is worried that the men may be acquitted due to deep-seated racism in the Mississippi Delta area. They discuss a similar case further south in which four white teenagers were acquitted of the rape of a black girl. Brigance admits the possibility that the rapists will walk free in this case as well. Carl Lee acquires an M16 rifle, goes to the county courthouse and opens fire. This results in the deaths of both rapists and also in the unintended injury of Deputy Looney (Chris Cooper), who has to have his leg amputated. Carl Lee is soon arrested without resistance. Brigance agrees to provide defense for Carl Lee for a much smaller amount of money than such a trial would usually require. He intends to enter a plea of not guilty by reason of temporary insanity.
The rape and subsequent revenge killing gain national media attention. The Ku Klux Klan begins to organize in the area. Freddie Lee Cobb (Kiefer Sutherland), the brother of Billy Ray, calls Brigance and his family with death threats and organizes the formation of a Klan chapter in the county. The district attorney, Rufus Buckley (Kevin Spacey), decides to seek the death penalty, and presiding Judge Omar Noose (Patrick McGoohan) denies Brigance a change of venue. Brigance seeks help for his defense team from sleazy divorce lawyer and close friend Harry Rex Vonner (Oliver Platt). He seeks guidance from long-time liberal activist Lucien Wilbanks (Donald Sutherland), a once-great civil rights lawyer who was disbarred for violence on a picket line.
Brigance is approached by Ellen Roark (Sandra Bullock), a fiery liberal law student from Massachusetts who belongs to the ACLU. Brigance is initially reluctant to accept Ellen's cooperation, but he later agrees to let her help with the case. The trial begins amid much attention from the media and public. The Klan, which has a member inside the sheriff's department, burns a cross on Brigance's lawn. This incident causes an argument between Brigance and his wife to the effect that if Jake had heeded Carl Lee's warning, this would not have happened. The police evacuate Jake's family from their house. Brigance and the police capture one of the Klan members, and they find a case with a bomb inside it. Brigance throws the bomb into the air, where it explodes. This motivates Jake to send his wife and young daughter away while the trial continues.
As the trial begins, the KKK march down Canton's streets and meet a large group of mostly black protesters at the courthouse. Chaos ensues outside the courthouse as the police lose control of the crowd. A black teenager kills the KKK Grand Dragon (Kurtwood Smith) with a Molotov cocktail, burning him to death. Brigance's attraction to Roark grows, and they nearly begin an affair before Brigance regains his wits. He goes home, finding that arsonists have burned down his house, nearly killing his dog Max in the process. The next morning, as the Mississippi National Guard is called in to take care of the rioting, Brigance sits on the still-smoking steps of his house, calling for his dog. Harry Rex arrives at the remains of the Brigance home and tells Jake that it is time to quit the case. Brigance argues that to quit now would make his sacrifices meaningless. The jury secretly discusses the case in a restaurant, going against the judge's instructions. All but one are leaning toward a guilty verdict and Carl Lee's fate looks sealed.
Freddie Lee Cobb shoots at Brigance as he exits the courthouse, but misses. The bullet hits a national guardsman policing the demonstrations, paralyzing him. Roark is kidnapped by Klansmen, beaten, tied to a stake in the wilderness in her underwear and left to die. She is saved by an informant called "Mickey Mouse," who is one of the Klansmen: Tim Nunley (John Diehl). Out of options, Brigance goes to see Carl Lee in his jail cell and advises accepting a lesser guilty plea. Carl Lee refuses and rejects Brigance's notions of race and justice, noting that although Brigance considers himself a "friend" to Carl Lee, Brigance has never visited his home and that "our kids will never play together." Carl Lee tells Brigance that he chose Brigance to be his attorney because Brigance is in fact his "enemy", as Brigance is white and was thus raised amid the same racial prejudices harbored by the jury members. Carl Lee tells Brigance to sway the jury by presenting to them whatever argument it would take to get Brigance himself to vote for acquittal, were Brigance a member of that jury.
The courthouse is packed to see the attorneys' closing arguments. Brigance tells the jury to close their eyes and listen to a story. He describes, in slow and painful detail, the rape of a young 10-year-old girl, mirroring the story of Tonya's rape. He then asks the jury, in his final comment, to "now imagine she's white." This final burst of imagery challenges the very nature of the trial itself, raising the very real specter - within the racist culture of the community in which the crime took place - that the actions of Hailey would not have been called to question before the court of law had the victim been white. Had it been so, it is implied that the father's motive in murdering the rapists would have been seen by the public as justified, and there would not have been any prosecution.
The argument Brigance then makes is that if the jury can - at any time - be compelled to spare the life of a white man for a vengeful murder, then they must be able to do the same for a black man. After deliberation, an African-American child runs out of the courthouse and screams, "he's innocent!" Jubilation ensues amongst the supporters outside. The KKK, enraged, become violent again. Sheriff Ozzie Walls (Charles S. Dutton) arrests Freddie Lee, as well as his own racist deputy. The movie ends when Brigance brings his wife and daughter to a family cookout at Carl Lee's house. Carl Lee is surprised and standoffish. Jake explains, "just thought our kids could play together," and Carl Lee smiles at that.