The novel is about an Englishman named Christopher Banks. His early childhood was lived in the Shanghai International Settlement in China in the early 1900s, until his father, an opium businessman, and his mother disappear within a few weeks of each other, when the boy is about ten years old. Christopher is sent to live with his aunt in England. He becomes a successful detective; now he will turn his skills to solve the case of his parents' disappearance. Though he knows a young woman named Sarah (also orphaned at age ten), Christopher never marries; he adopts an orphaned girl in England named Jennifer. His fame as a private investigator soon spreads, and in 1937 he returns to China to solve the most important case of his life. The impression is given that if he solves this case, a world catastrophe will be averted, but it is not apparent how. As Christopher pursues his investigation, the boundaries between life and imagination begin to evaporate.
At this time in China, Christopher is caught up in the Second Sino-Japanese War battles, which reach into the foreigners enclave of Shanghai. Through an old detective, he locates the house at which his parents may have been held. Though the disappearances happened a quarter-century earlier, Christopher believes that his parents will be there, a notion supported by the present occupants of the home who assume Christopher's family will be reunited in their home. On his way, he enters a war-torn police station belonging to the Chinese. After convincing them of his neutrality, he persuades the commander to direct him to the house of his kidnapped parents. After a while the commander refuses to take Christopher further, so he goes alone. Throughout all this, he appears to disregard the commander's words that what he is doing is dangerous, and even appears to be rude to him. He meets an injured Japanese soldier who he believes is his childhood friend Akira. They enter the house only to find out that his parents are not there. Japanese soldiers enter and take them away.
He learns from Philip (a former lodger at their residence in Shanghai whom Christopher called uncle as a boy) that his father ran away to Hong Kong with his new lover, and that his mother a few weeks later insulted Chinese warlord Wang Ku, who then seized her to be his concubine. Philip is a Communist double agent. He was complicit in the kidnapping, and made sure Christopher was not present when this kidnapping took place. He offers Christopher a gun to kill him, but Christopher refuses. He learns that his father later died of typhoid but that his mother may still be alive. Philip reveals the source of Christopher's living expenses and tuition fees during his schooling in England. His mother extracted financial support for her son when Wang Ku seized her.
In 1953 in Hong Kong, Christopher is reunited with his mother, who does not recognise him. He uses his childhood nickname, "Puffin", and his mother seems to recognise it. He asks her to forgive him, but she is confused as to what he should need forgiveness for. Christopher takes this as confirmation that she has always loved him.