
В двореца на злата кралица-вещица Бавморда млада затворничка ражда бебе, което според старо предсказание ще сложи край на царуването и. Акушерката успява да изнесе детето от замъка, но се налага да го хвърли в реката, когато я настигат кучетата на Бавморда. Реката отнася бебето край селото на джуджета и там го взима Уилоу – начинаещ магьосник. Той го спасява и поема на път, за да се изпълни предсказанието. Джуджето Уилоу (в ролята Уоруик Дейвис) е предопределен да спаси бъдещата принцеса, орисана да наследи престола от дяволската кралица. Негов партньор и помощник в битката с коварните планове и заплахи на злата кралица и нейната дъщеря е воинът Медмартигън (красавецът Вал Килмър).