На смену последнему дню перед Рождеством приходит ясная морозная ночь. Дивчины и парубки ещё не вышли колядовать, и никто не видел, как из трубы одной хаты пошёл дым и поднялась ведьма на метле. Она черным пятнышком мелькает в небе, набирая звезды в рукав, а навстречу ей летит черт, которому «последняя ночь осталась шататься по белому свету». Укравши месяц, черт прячет его в карман, предполагая, что наступившая тьма удержит дома богатого козака Чуба, приглашённого к дьяку на кутю, и ненавистный черту кузнец Вакула (нарисовавший на церковной стене картину Страшного суда и посрамляемого черта) не осмелится прийти к Чубовой дочери Оксане. Покуда черт строит ведьме куры, вышедший из хаты Чуб с кумом не решаются, пойти ль к дьячку, где за варенухой соберётся приятное общество, или ввиду такой темноты вернуться домой, — и уходят, оставив в доме красавицу Оксану, принаряжавшуюся перед зеркалом, за чем и застаёт ее Вакула. Суровая красавица насмехается над ним, ничуть не тронутая его нежными речами. Раздосадованный кузнец идёт отпирать дверь, в которую стучит сбившийся с дороги и утративший кума Чуб, решив по случаю поднятой чёртом метели вернуться домой. Однако голос кузнеца наводит его на мысль, что он попал не в свою хату (а в похожую, хромого Левченка, к молодой жене коего, вероятно, и пришёл кузнец), Чуб меняет голос, и сердитый Вакула, надавав тычков, выгоняет его. Побитый Чуб, разочтя, что из собственного дома кузнец, стало быть, ушёл, отправляется к его матери, Солохе. Солоха же, бывшая ведьмою, вернулась из своего путешествия, а с нею прилетел и черт, обронив в трубе месяц.
Стало светло, метель утихла, и толпы колядующих высыпали на улицы. Девушки прибегают к Оксане, и, заметив на одной из них новые расшитые золотом черевички, Оксана заявляет, что выйдет замуж за Вакулу, если тот принесёт ей черевички, «которые носит царица». Меж тем черта, разнежившегося у Солохи, спугивает голова, не пошедший к дьяку на кутю. Черт проворно залезает в один из мешков, оставленных среди хаты кузнецом, но в другой приходится вскоре полезть и голове, поскольку к Солохе стучится дьяк. Нахваливая достоинства несравненной Солохи, дьяк вынужден залезть в третий мешок, поскольку является Чуб. Впрочем, и Чуб полезает туда же, избегая встречи с вернувшимся Вакулой. Покуда Солоха объясняется на огороде с пришедшим вослед козаком Свербыгузом, Вакула уносит мешки, брошенные посреди хаты, и, опечаленный размолвкой с Оксаною, не замечает их тяжести. На улице его окружает толпа колядующих, и здесь Оксана повторяет своё издевательское условие. Бросив все, кроме самого малого, мешки посреди дороги, Вакула бежит, и за ним уж ползут слухи, что он то ли повредился в уме, то ли повесился.