장면 1. 성탄 전날 밤에 마녀 솔로하는 옛날 관습에 따라 성탄 노래를 부르고 있다. 그때 지옥에서 악마가 나타난다. 그는 솔로하의 아들 바쿨라가 «악마가 매질당한다”는 놀리기에 대해 엄청 화를 낸다. 악마는 복수로 하늘의 달을 훔치고 눈보라를 일으키자고 솔로하를 설득한다. 그렇게 하면 주변이 어두워질 테니, 추프가 집에서 못 나가게 하고 바쿨라가 추프의 미녀 딸 옥사나를 못 보게 된다. 솔로하는 동의한다. 추프가 홀아비이고 부자인데, 솔로하는 카자크 전사 중에 그를 제일 좋아하게 때문이다. 악마와 솔로하는 달을 훔치고 눈보라를 일으킨다. 술집 주인은 파나스를 술집에서 쫓아내고, 그가 추프 집에서 성탄절을 계속해서 맞이하기로 한다. 그때 추프가 집에서 나와서 파나스에게 같이 교장을 집에 가서 술을 마시러 가자고 한다. 눈보라가 심해져서 추프와 파나스는 길을 잃고 만다.
바쿨라도 잠을 못 자고 있다. 그는 추프의 집 앞에서 헤매하면서 들어가는 것을 망설이고 있다. 옥사나가 그를 정말사랑하는지를 어떻게 알 수 있을까?
어둠속에서 길을 잃은 파나스는 술집으로 돌아간다. 추프는 교장의 집을 못 찾고 자기 집에 들어가고 있다. 그때 바쿨라를 보게 된다. 추프는 «아니, 내 집이 아니다. 내 집으로 대장장이가 올 일이 없다»고 생각하고 솔로하를 보러 간다. 바쿨라는 마침내 마음을 먹고 옥사나에게 고백하기로 결심한다. 논보라가 그친다.
장면 2. 옥사나는 거울을 보면서 자기를 감탄하고 있다. 몰래 들어온 바쿨라는 그녀의 아름다움에 빠진다. 그러나 그녀의 마음을 얻는 것이 쉽지 않다. 그녀는 바클라와 함께 시간을 보내는 것이 치루하다고 놀리며 같이 놀 친구들을 기다리고 있다고 한다. 그들이 왔다! 한 친구 오다르카는 새로운 부츠를 신고 있다. 옥사나는 이런 선물을 받고 싶은데, 줄 사람이 없다고 불평한다. 바쿨라는 옥사나가 원하는 부츠를 가져 오겠다고 약속하고, 옥사나는 모든 친구들 앞에서 “바쿨라가 차리차 [여왕]의 부츠를 가져오면 그와 결혼하겠다”고 약속한다.
장면 3. 추운 밖에서 들어와 있는 솔로하와 악마는 몸을 따뜻하게 하려고 집에서 노래를 부르며 춤춘다. 갑자기 누가 문을 두드린다. 솔로하는 악마에게 자루안에 들어가라고 하자, 골로바가 들어온다. 교장 보러 가고 있었는데, 솔로하 집에 불 켜있는 것을 보고 같이 저녁을 보내기로 하였다고 한다. 그가 고릴카 [술] 한잔 마시자 누가 또 문을 두드린다. 솔로하는 골라바도 다른 자루에서 숨긴다. 교장이 들어온다. 눈보라 때문에 손님들이 오지 못했으니, 교장도 솔로하를 보러 나왔다. 그때 또 누가 문을 두드린다. 바로 추프이다.
솔로하는 교장을 세 번째 자루에서 숨기고 오래 기다리던 추프를 환영한다. 그때 바쿨라가 집에 들어온다. 겁을 먹은 솔로하는 교장이 있는 자루안에서 추프를 숨긴다. 바쿨라는 내일 명절이라 자루를 치워야겠다고 생각해 대장간으로 나간다.
장면 4. 성탄 전야에 소녀들과 소년들이 놀고 있다. 놀이를 하고 농담을 치고 있다. 술에 취한 파나스도 같이 놀고 있다. 옥사나도 여기에 와 있다. 그녀가 바쿨라를 보고 «부츠를 가져오면 너를 결혼하겠다»고 다시 말한다. 이때 바쿨라는 거만한 옥사나가 그를 더 이상 괴롭게 하지 않도록 촌을 떠나기로 한다.
모드가 얼떨떨하다. 혹시나 대장장이가 정신이 없어진 것이 아닌가, 마음이 상해서 자살한 것이 아닌가? 정상 코의 여자와 보라색의 코의 여자는 모든 사람에게 소문을 퍼뜨린다. 하나는 대장장이가 목매어 자살했다고, 하나는 투신자살했다는 소문이다. 옥사나는 바쿨라가 다른 여자와 사랑에 빠지고 그녀를 제일 아름답고 부르게 될까 봐 걱정이 된다. 그때 옥사나는 바쿨라가 놓아둔 자루를 본다. 모두가 자루를 푼다. 하나씩 자루에서 솔로하를 좋아하는 추프, 골로바, 교장이 나타난다. «역시 솔로하! 개구쟁이구만, 여자 악마구만!»이라고 다들 놀리면서 웃는다.
장면5. 바쿨라는 크지 않는 자루만 들고 주술사 파츄크를 보러 간다. 파츄크가 모든 악마를 알고 있다는 소문이 있다. 바쿨라는 오직 악마가 그를 도와줄 수 있으니, 악마에게 길을 알려달라고 한다. 파츄크는 «악마가 등 뒤에 있으면 멀리 안 가도 된다»고 답한다. 악마는 바쿨라의 영혼을 받는 대가로 도와주겠다고 한다. 피로 서명을 하겠다고 척하는 바쿨라는 악마의 꼬리를 잡고 십자를 꺼낸다. 십자를 무서워하는 악마는 바쿨라에게 도와주겠다고 약속한다. 바쿨라는 차리차를 보러 가라고 한다.
장면 6. 하늘이다. 크리스마스 이브 바이올린 음악이 들린다. 하늘에서 행성들이 맴돌고 있다. 키예프 마녀, 마법사들이 모여 있다. 그들 중에 파츄크와 솔로하가 있다. 악마의 노래를 부르고 있다. 그들을 바쿨라와 악마를 보고 바쿨라를 막으려고 하는데, 그는 또 십자를 꺼낸다.
장면 7. 곧 차리차가 등장하는데, 팡파르가 울리며 소녀소년들이 왔다 갔다 한다. 카자크들과 소녀들이 나온다. 결국 차리차가 나타난다. 바쿨라는 큰 절을 하고 «우리 아내가 같은 부츠를 신어봤다면..!»이라고 차리차에게 말한다. 차리차는 바쿨라의 말에 감동받아 가장 좋은 부츠를 선물한다.
장면8. 성탄 전야가 끝나고 곧 해가 뜬다. 일출을 무서워하는 악의 무리가 도망가고, 옥사나를 위한 귀중한 선물을 들고 있는 바쿨라가 악마를 타고 돌아온다. 해가 뜬다. 소녀들은 태양, 옥토, 빛, 삶을 상징하는 바퀴를 돌리면서 나타난다. 크리스마스와 사랑이 온다고 것을 알리는 종소리가 울린다.
장면 9. 옥사나는 바쿨라만큼 그녀를 사랑할 수 있는 소년이 없다는 것을 깨달아서 슬픔에 빠졌다. 게다가 어떤 두 여자들을 아침부터 추프에게 바쿨라가 자살했다고 이야기하고 있다. 두 여자는 바쿨라가 자살한 방법에 대해 싸우고 나간다. 추프도 집에 가고 있다. 옥사나는 혼자 있으면서 바쿨라를 사랑한다는 말을 하고 있는 동안에 돌아온 바쿨라를 못 본다. 이제 옥사나는 부츠가 없어도 바쿨라와 결혼할 것이다. 추프는 바쿨라가 상트 페테르부르크에서 가져 온 귀중한 선물을 보고 동의한다. 추프는 모두에게 결혼 소식을 알린다.
모두가 바쿨라가 돌아온 것에 기쁘다. 바쿨라는 크리스마스 전야에 관한 놀라운 이야기를 황금 깃털로 쓴 양봉가 루드이 파니코를 청중에게 소개한다.