Martin Vail (Richard Gere) is a Chicago defense attorney who loves the spotlight, and does everything that he can to get his high-profile clients acquitted on legal technicalities. One day he sees a news report about the arrest of Aaron Stampler (Edward Norton), a 19-year-old altar boy from Kentucky with a severe stutter, who is accused of brutally murdering the beloved Archbishop Rushman (Stanley Anderson). Vail jumps at the chance to represent the young man, pro bono. During his meetings at the County jail with Stampler, Vail comes to believe that his client is innocent, much to the chagrin of Vail’s former lover, prosecutor Janet Venable (Laura Linney).
As the trial begins, Vail discovers that powerful civic leaders, including the corrupt state’s attorney John Shaughnessy (John Mahoney) recently lost millions of dollars in real estate investments due to a decision by the Archbishop not to develop on certain church-owned lands. The Archbishop secretly received numerous death threats as a result. Following a tip from a former altar boy about a videotape involving Stampler, Vail makes a search of the Archbishop’s apartment and finds a VHS tape shot by Rushman that shows Stampler being forced to have sex with another teenage altar boy and a teenage girl named Linda Forbes. Vail is now in a dilemma: introducing this evidence would make Stampler more sympathetic to the jury, but it would also give him a motive for the murder—which Venable has been unable to establish.
When Vail confronts his client and accuses him of having lied, Stampler breaks down crying and suddenly transforms into a new persona: a violent sociopath who calls himself “Roy.” “Roy” confesses to the murder of the Archbishop, and threatens Vail. When this incident is over Stampler once again becomes passive and shy, and appears to have no recollection of the personality switch – what he calls having “lost time.” Molly Arrington (Frances McDormand), the psychiatrist examining Stampler who witnessed the entire event, is convinced that he has dissociative identity disorder, caused by years of physical and sexual abuse at the hands of his father and Archbishop Rushman, respectively. Vail does not want to hear this, because he knows that he cannot enter an insanity plea during an ongoing trial.
Vail slowly sets up a confrontation in court by dropping hints about the Archbishop’s abusive tendencies, as well as Stampler’s multiple personalities. He also has the sex tape delivered to Venable, knowing that she will realize who sent it—since she is under intense pressure from both Shaughnessy and her boss Bud Yancy (Terry O’Quinn) to deliver a guilty verdict at any cost—and will use it as proof of motive.
At the climax, Vail puts Stampler on the witness stand and gently questions him about the sexual abuse he suffered at Rushman’s hands. He also introduces evidence that Shaughnessy and Yancy had covered up evidence of Rushman molesting another young man. After Venable questions him harshly during cross-examination, Stampler turns into “Roy” in open court and attacks her, threatening to snap her neck if anyone comes near him. He is subdued by courthouse marshals and rushed back to his holding cell. The judge dismisses the jury in favor of a bench trial and then finds Stampler not guilty by reason of insanity, remanding him to a maximum security mental hospital. Venable is fired for losing the case, and for allowing Rushman’s crimes to come to public light.
Vail visits Stampler in his cell to tell him of the dismissal. Stampler claims to have no recollection of what happened in the courtroom, having again “lost time.” However, as Vail is leaving, Stampler asks him to “tell Miss Venable I hope her neck is okay”, which he could not have been able to remember if he had “lost time.” When Vail confronts him, Stampler reveals that he had faked multiple personality disorder. No longer stuttering, he brags about having murdered Rushman, as well as Linda, his girlfriend. When Vail asks if there ever was a “Roy”, Stampler replies that “there never was an ‘Aaron.'” Stunned and disillusioned, Vail walks away and leaves the courthouse as Stampler taunts him from his cell.