The story begins with a 13-years-old boy named Todd Bowden arriving at the doorstep of a 76-years-old man Arthur Denker and accusing him of being Kurt Dussander, the "Blood Fiend" of Patin (a fictional Nazi extermination camp). At first Dussander denies the allegation, but eventually acknowledges his true identity. Todd is not interested in turning the fugitive Nazi over to the proper authorities; rather, Todd wishes to hear highly detailed stories about Dussander's service in the camps, having recently discovered an interest in the subject. However, Todd still threatens Dussander with exposure should the old man refuse.
Over the next several months, Todd visits Dussander nearly every day under the pretext of reading newspapers and novels to him, all the while threatening and badgering Dussander into revealing more and more details of the atrocities he oversaw. In the first escalation of the story, Todd brings Dussander a Christmas present—a SS Obersturmbannführer's uniform. Todd forces Dussander to put it on and then to march around on command.
Spending time with Dussander means his performance at school begins to slip. Todd also begins to have nightmares about the camps and his grades slip further. After the first confrontation with his father about the grades, he modifies his report cards before giving them to his parents.
Eventually, Todd's concentration deteriorates to the point that he's in danger of flunking several courses and is given a letter to his parents requesting an appointment with Edward French, the school guidance counselor. Todd does not want his parents to find out, so he takes the letter to Dussander, who concocts a ruse: Dussander, posing as Todd's grandfather, Victor, goes to the appointment. He presents a story about Todd being upset about his parents who are on the verge of a divorce and promises to make sure Todd's grades improve or Todd's parents will attend counseling; French accepts the story and the promise, but notices that Dussander never used Todd's name, possibly a connection with the German word for death, Tod.
Dussander now tells Todd that he is as deeply entrenched in problems as he himself is. Todd knows that Dussander is a wanted war criminal. Dussander on the other hand knows that Todd has been doctoring his report cards and knowingly socialized with a war criminal for several months without telling anybody. He now forces Todd to spend the visits studying. With great effort, Todd is able to pick his schoolwork back up to the point where Ed French's concerns are sufficiently ameliorated. Since he no longer has any use for Dussander, Todd resolves to kill him in his home and make it look like an accident.
Todd has earlier claimed to have given a letter with facts about Dussander to a friend; if anything should happen to Todd, the letter will be sent to the proper authorities. Before Todd can carry out his murderous intent by pushing the old man down his basement stairs, Dussander now claims that he has written down what has happened and put in a bank deposit box, so that it will be found upon his death.
After school ends for the year, Todd stabs a homeless alcoholic to death. He finds that committing murder somehow reduces his nightmares. It is the first of several murders Todd commits over the next months (his weapons are a butcher knife and a claw hammer).
Years pass and Todd's visits to Dussander become much less frequent and as he progresses through high school, his athletic and academic performance is good enough to win him both high marks and a college scholarship. He loses his virginity, but finds the joys of sex with a willing partner unsatisfying compared to the thrill of murdering local derelicts. When circumstances do not allow him to continue his serial killings, he picks a concealed spot overlooking the freeway and aims at people in passing cars with his hunting rifle.
Dussander, suffering from his own nightmares, has also taken to killing winos for essentially the same reason as Todd, inviting them home, getting them drunk and stabbing them in the neck with a butcher knife and burying the bodies in his basement. Despite the link between them, Dussander and Todd are not immediately aware of each others' exploits.
One night when Dussander is digging a grave for his latest kill, he has a heart attack. He struggles upstairs to the phone to call Todd, who comes over and cleans up the mess of blood that the wino has left all over the house. Todd also buries the corpse in the basement before finally calling an ambulance. At the hospital, Dussander happens to share a room with Morris Heisel, an elderly Jewish man recovering from a broken back. Heisel thinks that he recognizes "Mr. Denker", but cannot place him.
When Todd visits Dussander in the hospital, Dussander admits his threat about the letter in the bank deposit box is a ruse, as is Todd's threat of a letter with a friend. Dussander has read about the winos whose murdered bodies have been found by the police, and tells Todd not to get careless. Todd pleads ignorance, but Dussander is not fooled, telling him that "we are quits." Todd leaves, uneasy about the implications of Dussander's news.
A few days later, Heisel realizes that Denker is Dussander, the commandant of the Patin camp where his wife and daughters died in the gas chambers. Soon after Heisel has left the hospital, a Jewish war criminal hunter named Weiskopf turns up at Dussander's hospital bed, telling him that he has been found out. After Weiskopf leaves, Dussander steals some drugs from the hospital dispensary and commits suicide.
In the morning paper, Todd's parents find pictures of "Mr. Denker" along with a picture of Dussander as commander of Patin. Todd convinces them that he didn't know about Dussander's identity. A few days later, Weiskopf, accompanied by a police detective named Richler, visits Todd, and is not so easily convinced.
Meanwhile, Ed French has met Todd's real grandfather since he happened to be in Victor's hometown for a conference. French brought up their previous conversation, but of course Todd's real grandfather did not remember it since he wasn't there. French became suspicious and checked through Todd's old report cards, finding that they have been tampered with. Later, he sees a newspaper article concerning Dussander's death and identifies him as the man who met with him about Todd's grades. French confronts Todd, who responds by shooting him dead.
Todd then takes his rifle and ammunition to his hideout by the freeway. He embarks on a shooting spree, resulting in his death at the hands of the authorities five hours later.