A baby girl is discovered in a river by Ranon and Mims, the children of Willow Ufgood, a dwarf farmer and magician and the baby girl is taken into the care of Willow's family. But when a terrifying dog-like creature attacks Willow's village, whilst tracking down the baby. Willow consults the village council and the wizard The High Aldwin. The High Aldwin gives Willow a task and Willow leaves the village and embarks on the task to give the baby girl to a responsible person. But Willow soon learns the baby is Elora Danan, the baby girl destined to bring about the downfall of the evil sorceress Queen Bavmorda. Joined by his allies: swordsman Madmartigan, sorceress Fin Raziel and the Brownies Franjean and Rool, Willow takes it upon himself to protect Elora from Queen Bavmorda, who intends to kill Elora and prevent Elora from fulfilling her destiny. And Willow and his allies are pursued by Queen Bavmorda's daughter Sorsha and the evil commander of Queen Bavmorda's army General Kael, whom are searching for Elora and bring her back to Queen Bavmorda's castle, where Queen Bavmorda bids to kill Elora in a ritual and prevent the prophecy of her downfall.
In a time of dread, seers have foretold the birth of a child that would bring about the downfall of the powerful Queen Banmorda that wants to destroy the baby. When the child is found, her midwife flees with her. But she is hunted down by dog-like creatures and she puts the baby on a wooden raft to be carried out by the river. The Daikini (human) child is found by the Nelwyn (dwarf) family of the farmer and aspirant magician Willow Ufgood and his wife decides to take care of her. But when the dog-like creatures attack the Nelwyn village, Willow discloses the baby to the council. The sorcerer High Aldwin decides that Willow shall take the baby back to the crossroad of the Daikini land with a small group and deliver her to a responsible Daikini. But Willow meets the thief Madmartigan locked up in a cage and he believes Madmartigan is not the right person. However he is convinced by his friend to deliver the baby to Madmartigan. But soon the fairy Cherlindrea tells that the baby is Elora Dana from the omen and is a very special baby. She also tells that he must protect Elora and deliver her to the sorceress Fin Raziel that will raise her. She also gives a magic wand to him to deliver to Fin Raziel. Willow embarks in his journey with Madmartigan and the Brownies Franjean and Rool but they are chased by Queen Bavmorda's daughter Sorsha and the evil General Kael. The struggle between good and evil begins.
Willow, a small farmer/apprentice magician, meets Madmartigan, a great swordsman, and together they journey through a war-torn land of magic and monsters, to save a baby princess from death at the hands of an evil queen.
In the dungeons of the castle of the evil Queen-sorceress Bavmorda, a prisoner gives birth to a child who, according to an ancient prophecy, will put an end to the reign of the Queen. A midwife saves the child from the wrath of Bavmorda, but is forced to throw her cradle in a river when reached by the Hounds of the Queen. The river brings the child near a village of nelwyns, and little Willow finds and adopts her. When the Hounds reach the village, Willow begins a difficult journey to bring the baby back to her people and to fulfill the prophecy.
A reluctant dwarf must play a critical role in protecting a special baby from an evil queen.
- The evil queen Bavmorda (Jean Marsh) wields black magic to conquer the land and enslave its people. She fears the birth of a child with a peculiar birthmark because prophecies foretell that the child will bring about her downfall. Bavmorda imprisons all the expecting mothers and the child of the prophecy is born. Before Bavmorda has a chance to kill the baby girl (Kate Greenfield and Ruth Greenfield), the midwife escapes with her. She sends the blessed baby downstream on a raft. The child washes up near a village inhabited by a race of dwarf-like people called Nelwyns. Willow Ufgood (Warwick Davis), the farmer and amateur magician who finds the baby, is chosen by the town council to return the child to the world of the "large people," or Daikini. Against their better judgment, Willow and his friend Meegosh (David Steinberg) entrust the baby to the first Daikini they meet, a renegade warrior named Madmartigan (Val Kilmer).
On their way home, Willow and Meegosh are attacked by a clan of Brownies, who have stolen the baby from Madmartigan. The Brownie fairy queen of the forest, Cherlindrea (Maria Holvoe), tells Willow that he has been chosen to protect the baby, whose name is Elora Danan. Cherlindrea gives Willow a magic wand and directs him to ask the sorceress Fin Raziel (Patricia Hayes) for help. Cherlindrea sends along two brownies as guides, Franjean (Rick Overton) and Rool (Kevin Pollak). Willow's party bumps into Madmartigan, who helps them in a few close calls with Sorsha (Joanne Whalley), Bavmorda's daughter. Willow and the rest of the group finally meet Raziel, only to find that the sorceress has been turned into a rodent by Bavmorda.
Sorsha captures Willow and his associates. They start a long trek to Nockmaar castle, Bavmorda's stronghold. Willow attempts to use magic to return Raziel to her human form, but fails. Meanwhile, Madmartigan and the Brownies manage to escape, while Madmartigan, under the influence of the Brownies' love potion, becomes temporarily infatuated with Sorsha. Willow and the group escape from Sorsha's control and make a hasty retreat with stolen horses. The group eventually finds the castle of Tir Asleen, where Cherlindrea told them they would find protection from Bavmorda, but the castle is under Bavmorda's spell; all its inhabitants are frozen in ice. Madmartigan, refusing to give up hope, prepares for Sorsha's attack while Willow once again fails to transform Raziel into human form.
Sorsha and her army arrive, but so does the Army of Galladoorn, led by Madmartigan's old friend Airk Thaughbaer (Gavan O'Herlihy). During the ensuing battle, Sorsha falls in love with Madmartigan and changes sides. Nockmaar's General Kael (Pat Roach), however, captures Elora and takes her to Nockmaar. Willow, Madmartigan, Sorsha, the Brownies, the sorceress Fin Raziel (now in the shape of a goat), and what is left of Airk's army set up camp, preparing to storm Nockmaar castle to rescue Elora. Willow finally returns Raziel to her true form, and the sorceress puts a spell on the camp to protect them from Bavmorda's magic. The battle at Nockmaar begins the next day. Willow manages to save Elora at the last moment from Bavmorda's murderous ritual, and Bavmorda is destroyed, in part by her own magic. He leaves the baby in the caring arms of Madmartigan and Sorsha. Willow returns happily to his village and his family with a gift from Raziel: a book of magic to study.