В ночь перед Рождеством в селе Диканька чёрт похитил месяц с неба, рассчитывая, что в темноте отец Оксаны не пойдёт в гости и останется дома. Это помешало бы Вакуле, которого чёрт не любил, встретиться с Оксаной, так как с её отцом у него были враждебные отношения. Несмотря на темноту, казак Чуб всё же отправился в гости, но заблудился в метели. В это время Вакула пришёл к Оксане, которая, посмеиваясь, сказала, что выйдет за него замуж, если он подарит ей туфельки, подобные царским.

Отец Оксаны, найдя свою хату, постучал в дверь, и ему открыл Вакула. Сначала он подумал, что ошибся домом, но затем понял, что может навестить мать кузнеца, которую в селе считали ведьмой, и направился к ней. Ведьма, желая выйти замуж за богатого вдовца, пыталась поссорить Чуба с Вакулой, чтобы помешать свадьбе кузнеца с Оксаной. В её доме по очереди побывали чёрт, сельский голова и дьяк, которых она спрятала в мешки, чтобы они не встретились. Вакула же, зайдя к ведьме, вскоре вернулся расстроенным, и Чуб также попал в один из мешков.

Кузнец заметил мешки и решил отнести их в кузницу. По дороге увидел, как Оксана разговаривает с другим мужчиной, и в отчаянии бросил все мешки, кроме самого лёгкого, с чёртом, посреди улицы. Он решил покончить с собой, но передумал и пошёл за советом к знахарю-колдуну. Тот посоветовал обратиться за помощью к чёрту, который находился в мешке. Вакула поймал чёрта, заставил его отвезти себя в Петербург к царице.

Тем временем деревенские девушки, колядуя, нашли мешки с дьяком, сельским головой и казаком. Услышав слух о том, что Вакула повесился, Оксана расстроилась и поняла, что любит его и хочет выйти за него замуж. В Петербурге Вакула получил у царицы туфельки и вернулся в село. После отдыха он пошёл к Чубу просить руки Оксаны. Чуб, разгневанный тем, что ведьма прятала его соперников в мешках, не стал препятствовать свадьбе. Вакула подарил Оксане туфельки, и она согласилась выйти за него замуж.

Персонажи

Оксана — дочь бога­того казака, около 17 лет, кра­си­вая, с длин­ными чёр­ными косами, чёр­ными гла­зами и бро­вями, вздёр­ну­тым носом, смуг­лая, каприз­ная и изба­ло­ван­ная.

Ваку́ла — талантли­вый куз­нец и худож­ник, моло­дой, силь­ный, целе­устрем­лён­ный, верит в Бога, влю­блён в Оксану.

Чёрт — мел­кий бес, с узкой мор­доч­кой и пятач­ком, тон­кими ногами и хво­стом, коз­ли­ной боро­дой и рож­ками, чёр­ный, хит­рый, злой.

Чуб — отец Оксаны, ста­рый казак, вдо­вец, бога­тый, уса­тый, лени­вый, тяжёлый на подъём.

Соло́ха — мать Вакулы, около 40 лет, обыч­ной внеш­но­сти, вдова, поль­зу­ется успе­хом у муж­чин, говор­ли­вая и угод­ли­вая, ведьма, по ночам летает на метле и дру­жит с чёр­том.

Пузатый Пацю́к — зна­харь и кол­дун, раньше был Запо­рож­ским каза­ком, но уже 10 лет жил в Диканьке, ста­рый, тол­стый, в широ­ких шаро­ва­рах.