Marnus Erasmus is an eleven-year-old boy who, with his family, lives in Cape Town, South Africa in the early seventies. The Erasmus family, as white Afrikaners, lives in a country where blacks and coloured people form the majority, but where the white Apartheid regime rules and Marnus' father is an important general in the army.
Marnus grows up believing that black people are second-class people because he has been indoctrinated by the Apartheid system and his parents' views. On the other hand we, the readers, see that all Marnus' encounters with black people have actually been positive. Marnus' father hates black people because his father, Marnus' grandfather, and his family were driven away and their land was expropriated by the black majority from Tanganyika, today's Tanzania. They fled to South Africa and, together with the descendants of other white settlers, turned it into an ostensibly modern state. Now Marnus' father thinks that the black people are going to destroy everything that they built up and that the white population has to prevent this by keeping the native Africans under control. Marnus' older sister Ilse, an intelligent and talented girl, under the influence of a stay in the Netherlands, but also of an aunt living in London, gradually begins to become more and more sceptic of her father's beliefs.
Marnus' best friend is Frikkie, who is also white. They attend the same school and they meet almost every minute in their free time. In the summer holidays Frikkie stays with Marnus in the Erasmuses' house, where Marnus' father often meets generals from other countries. He tells Marnus that he is not allowed to tell anybody else that there is a general from another country (Chile) visiting there, and that he has to call him "Mr. Smith". At dinner Marnus' father and the general speak about the political situation in the world. Mr. Smith says that he is relieved that his army has overthrown Allende's socialist government in Chile. Marnus' father tells the general that South Africa, too, is in a very bad position because the world is "against his country". He claims that the rest of the world is against them and that the white government of South Africa does not discriminate against the black population in any way.
Marnus makes an agreement with Frikkie that they will tell each other all their secrets, which is why Marnus ignores his father's warning not to tell anybody that he speaks with Mr. Smith. Marnus tells Frikkie that the whole world is against South Africa and that the coloured people are to blame for that.
One night Marnus wakes up and he notices that Frikkie is not in his bed. He can see the spare room through the floor-boards in his room and witnesses Frikkie being raped. He assumes the rapist is Mr. Smith who is supposed to have left that night, and goes downstairs to wake his parents, but finds his father is not in bed. He goes back upstairs and observes that the man who is raping Frikkie does not have a scar on his back like the General (Mr. Smith) and realises that it is his father. The next day he asks Frikkie if something happened during the night but Frikkie does not tell Marnus anything. Frikkie says that he has decided to go home and he does not want to stay longer. Marnus reassures himself that Frikkie will never tell anyone what happened.
In specially interspersed italicized sections of the novel set in the late 1980s, Marnus is presented to be a soldier in the South African Border War, in which he is apparently killed.