In 1958, the questions and answers to be used for the latest broadcast of NBC’s popular quiz show Twenty-One are transported from a secure bank vault to the studio. The evening’s main attraction is Queens resident Herb Stempel (John Turturro), the reigning champion, who correctly answers question after question. However, both the network and the program’s corporate sponsor, the supplementary tonic Geritol, find that Stempel’s approval ratings are beginning to level out, meaning that the show would benefit from new talent.
Producers Dan Enright (David Paymer) and Albert Freedman (Hank Azaria) are surprised when Columbia University instructor Charles Van Doren (Ralph Fiennes), son of a prominent literary family, visits their office to audition. Realizing that they have found an ideal challenger for Stempel, they offer to ask the same questions during the show which Van Doren correctly answered during his audition. He refuses, but when he comes within reach of a game-winning 21 points on the show, he is asked one of the questions from his audition. After a moment of moral indecision, he gives the correct answer. Stempel deliberately misses an easy question and loses, having been promised a future in television if he does so.
In the weeks that follow, Van Doren’s winning streak makes him a national celebrity, but he buckles under the pressure and allows Enright and Freedman to start giving him the answers. Meanwhile, Stempel, having lost his prize money to an unscrupulous bookie, begins threatening legal action against NBC after weeks go by without his return to television. He visits New York County District Attorney Frank Hogan, who convenes a grand jury to look into his allegations.
Richard Goodwin (Rob Morrow), a young Congressional lawyer, learns that the grand jury findings have been sealed and travels to New York City to investigate rumors of rigged quiz shows. Visiting a number of contestants, including Stempel and Van Doren, he begins to suspect that Twenty-One is a fixed operation. However, Stempel’s volatile personality damages his credibility, and nobody else seems willing to confirm that the show is fixed. Fearing Goodwin will give up the investigation, Stempel confesses that he was fed the correct answers during his run on the show, and insists that Van Doren must have been involved as well. Another former contestant gives Goodwin a set of answers that he mailed to himself two days before his quiz show appearance, which Goodwin takes to be corroborating evidence.
Van Doren deliberately loses, but NBC offers him a lucrative contract to appear as a special correspondent on the morning Today show. The House Committee for Legislative Oversight convenes a hearing, at which Goodwin presents his evidence of the quiz show’s corruption. Stempel testifies at the hearing but fails to convince the committee, and both NBC network head Robert Kintner (Allan Rich) and Geritol executive Martin Rittenhome (Martin Scorsese) deny any knowledge of Twenty-One being rigged. Subpoenaed by Goodwin, Van Doren testifies before the committee and admits his role in the deception. After the hearing adjourns, he learns from reporters that he has been fired from Today and that Columbia’s board of trustees is going to ask for his resignation.
Goodwin believes that he is on the verge of a victory against Geritol and NBC, but realizes that Enright and Freedman will not jeopardize their own futures in television by turning against their bosses. He silently watches the producers’ testimony, vindicating the sponsors and the network from any wrongdoing, and taking full responsibility for rigging the show.