Howard Brackett (Kevin Kline) is a well-liked English literature teacher, living a quiet life in the fictional town of Greenleaf, Indiana, with his fiancée and fellow teacher Emily Montgomery (Joan Cusack), who recently lost 75 pounds. The town is filled with anticipation over the nomination of Howard’s former student Cameron Drake (Matt Dillon) in the Best Actor category at the Academy Awards for his portrayal of a gay soldier in To Serve and Protect. Cameron does indeed win the award and, in his acceptance speech, thanks Howard, adding, “. . . and he’s gay.”
Howard’s family, friends, students, co-workers and Emily are shocked; but that is nothing compared to Howard’s own reaction of disbelief and indignation. He angrily reassures those who know him that he is heterosexual. Reporters invade his hometown, harassing him for interviews, following the awards night telecast. Howard is placed under the scrutiny of his boss, Principal Tom Halliwell (Bob Newhart), who is uncomfortable with the attention being brought to the school.
Although the other reporters leave after getting their story, one stays behind: on-camera entertainment reporter Peter Malloy (Tom Selleck), who wants to wait the week out so he can cover Howard’s wedding to Emily. Howard continues to be harassed and dismayed by the changed attitudes of everyone around him, and decides that he must sleep with Emily in order to prove his heterosexuality. Howard finds he cannot go through with it due to his conflicting emotions and Emily’s concern for his well-being. Howard crosses paths with Peter, who reveals he is gay and, trying to provide a helpful ear, narrates his own experience in coming out to his family. Howard insists that he is not gay, prompting Peter to kiss him. Although shocked, Howard reacts somewhat positively to the kiss.
Howard’s final measure to restore his heterosexuality is the use of a self-help audio cassette, although that fails as well. During the wedding ceremony, Emily recites her vow without hesitation, but when Howard is prompted by the minister, he instead says, “I’m gay.” The wedding is called off, and although Peter is proud of Howard, Howard is angry with himself for hurting Emily. Howard is fired from the school because of his outing.
Despite no longer being on the faculty, Howard attends the graduation ceremony to support his students. Having learned of the ensuing media blitz while in Los Angeles, Cameron flies to his hometown with his supermodel girlfriend (Shalom Harlow) and shows up at the ceremony. When he learns that his former teacher became ineligible for the “Teacher of the Year” award due to being dismissed for being gay, he publicly questions if the reason given, that the community would not have supported Howard’s continued employment, is valid. Spurred on by this, when one student who got into college—thanks to Howard’s hard work—proclaims to be gay, his classmates join him to proclaim themselves to be gay as well, showing their support. Howard’s family follows suit, as do his friends, and all the townsfolk assembled. Although Howard does not win “Teacher of the Year”, Cameron presents him with his Oscar.
Howard’s wedding-crazy mother (Debbie Reynolds) finally gets a wedding—her own, when she and her husband (Wilford Brimley) renew their vows. Howard, Peter and the rest of the townsfolk attend the reception. Among the crowd are Emily and Cameron, who appear to have begun a relationship. Everyone dances to the Village People’s song “Macho Man”.