В пророчестве говорится, что власть жестокой королевы Бавморды (Жана Марша) будет уничтожена девушкой, которая вот-вот родится. Правитель приказывает убить всех младенцев женского пола. Только маленькая Элора избегает этой участи. Оставленная в корзине, она достигает деревни гномов Нелвинув. Там Элору находит фермер Уиллоу (Warwick Davis), который решает отдать ребенка матери. Поэтому он отправляется в путешествие. По дороге в город гном встречает Мадмартигана (Вала Килмера), запертого в клетке, который соглашается помочь ему в поисках матери.