In 1952, 12-year-old David (Ben Tibber) has grown up in a Bulgarian prison camp. He vaguely remembers being separated from his parents. Luckily, he has found a friend in Johannes (Jim Caviezel), a fellow prisoner who does his best to look after the boy. He plants in his mind the idea of escaping although he doesn't have the energy to do so himself. A secret ally in the camp gives David careful instructions on how to make a dash for freedom, along with a letter to present to authorities in Denmark.

David escapes and even manages to get through a dangerous border crossing into Greece. Once aboard a freighter bound for Italy, he meets Roberto (Francesco De Vito) who keeps his presence a secret. In Italy, the youth, who has spent his childhood living in fear of impending danger and never trusting anyone, finds it difficult to navigate in the world outside prison walls. He runs into some trouble with a baker in a village and then saves a rich girl from a burning cabin. Maria (Villa Carinci) takes a fancy to David but finds it odd that he is always so tense. Her parents want to learn more about him but when they start to ask questions, he flees.

I Am David has been written for the screen and directed by Paul Feig. It is based on a novel by Anne Holm. This family adventure story explores the challenges that a 12-year old boy must face in a free world he has never known before. Nearing the Swiss border, he meets Sophie (Joan Plowright), an artist who is trying to cope with her own tragedy. While painting a picture of him, she is astonished by his serious eyes and his inability to smile. Of course, all the years of pain and suffering have burdened him with grief. The moving finale provides a fitting close to this heart-affecting story of a boy's strong survival instinct and his yearning to discover his true identity.