The film centers on a character named Askur, who marries a woman named Embla in a pagan ceremony, enraging King Olaf, a Christian who seeks to root out paganism in Norway. Embla is captured, and as punishment, Askur is sent to Iceland with the task of converting the people there to Christianity in order to free Embla. The choice of names for the young married couple comes from Nordic mythology, in which the first two humans are named Ask and Embla.
A man becomes too old to run his farm and he is made unwelcome in his daughter and son-in-law's urban dwelling. Dumped in a home for the elderly, he meets an old girlfriend from his youth, and they elope to the wilds of Iceland to die together.
The Juniper Tree is set in Iceland and portrays the story of two sisters, Margit (Björk Guðmundsdóttir) and her elder sister Katla (Bryndis Petra Bragadóttir), who escape their home after their mother (Guðrún S. Gísladóttir) is stoned and burned for witchcraft. They go where no one knows them, and find Jóhann (Valdimar Örn Flygenring), a young widower who has a son called Jónas (Geirlaug Sunna Þormar). Katla uses magical powers to seduce Jóhann and they start living together. Margit and Jónas become friends. However, Jónas does not accept Katla as his stepmother and tries to convince his father to leave her. Katla's magic power is too strong and even though he knows he should leave her, he can't. Margit's mother appears to her in visions and Jónas' mother appears as a raven and to bring him a magical feather.
In the opening scene in Ireland, a young boy loses his parents in a Viking raid, but is spared in spite of the command of Thord, the Vikings' leader, to kill him. His sister is kidnapped by the Vikings. Twenty years later, the boy has become a man and travels to Iceland to seek revenge against the perpetrators and find his sister. His name is never revealed, and he is only known as "Gestur" by the characters in the film since he is a stranger to them. "Gestur" simply means "guest" but is also not an uncommon given name.