The movie is based on a novella (a long short story) by Stephen King from a book of short stories called "Different Seasons" which also includes "The Body" which became Stand by Me (1986) and "Rita Hayworth and Shawshank Redemption" which became The Shawshank Redemption (1994).
There had been talk of a film version in 1984. James Mason agreed to play Kurt, but died from a heart attack before filming could begin. Richard Burton was considered as his replacement, but he died from a cerebral hemorrhage before he could accept the part. The first attempt to film this story, in 1987, ran over budget and was stopped after six weeks of shooting while only ten days of filming remained. According to Stephen King, who saw a rough cut of three-quarters of the movie, "it was really good". It starred Ricky Schroder as Todd Bowden and Nicol Williamson as Kurt Dussander, and was directed by Alan Bridges.
Ian McKellen said that one of the things that convinced Bryan Singer to cast him as Dussander despite him being British, and considerably younger than the character, was when Singer raved to McKellen about about a performance by an actor he had recently seen in Cold Comfort Farm (1995), and McKellen informed him that he was the same actor he was talking about.
When Dussander is arrested in the hospital, the film displays a newspaper article which reveals that Dussander was independently wealthy and lived off of a "small personal fortune", seemingly to explain how Dussander was able to live by himself with no outward source of income. In Stephen King's original written story, Dussander's wealth is explained one step further: mainly that in the 1950s he had bribed a banker in Maine to purchase several stocks and bonds under an assumed name. Dussander would later tell Tod Bowden that the banker's name was Andy and was later sent to jail for killing his wife. The banker was in fact Andy Dufresne, the main character of The Shawshank Redemption (1994) which Stephen King also wrote.
Kevin Pollak was originally attached to play Edward French but was replaced by David Schwimmer. Bryan Singer was impressed with Schwimmer's performance in a play in Los Angeles and cast him in the part instead.
Editor / composer John Ottman actually did two cameos in the film, but both were cut. The first was reading the lines of the off-screen teacher, but his voicing of lines was substituted at the last minute by Christopher McQuarrie. He also had a cameo as the music teacher conducting the high-school band in the graduation scene but this was eliminated from the final cut.
Ian McKellen later claimed that Dussander's accent was very difficult to master, since Dussander was supposed to have been living in California for decades speaking English and trying to suppress his German accent.
The main death camp in which Dussander is quoted as serving is stated to be "Patin", which was not an actual extermination camp used by the Nazis. Based on Dussander's descriptions, the camp most closing matching his narrative is "Maly Trostenets", located near Minsk and mainly used to kill Russian Jews as well as Jews deported from Germany.
Todd's high school mascot (the Pirates) and school color (green and gold) are the same as director Bryan Singer's old high school. Also, the number on Todd's varsity jacket (85) is the year Bryan graduated.
The trivia items below may give away important plot points.
The movie ending and the novella ending are drastically different. In the novella's ending, after Dussander's death, Todd murders Mr. French after he confronts him and then goes up on an overpass and begins to snipe people in cars going by, until the police kill him. In the movie he essentially gets away with everything, without having to kill Mr. French. Bryan Singer opted to use this ending and later turned to Stephen King, citing that he didn't think he could do justice to the novella's ending.