24 декабря, дом советника медицины Штальбаума. Все готовятся к Рождеству, а дети – Фриц и Мари – строят догадки, что же на этот раз им преподнесет в подарок выдумщик и искусник крестный, старший советник суда Дроссельмейер, часто чинивший часы в доме Штальбаумов. Мари мечтала про сад и озеро с лебедями, а Фриц заявил, что ему больше нравятся подарки родителей, которыми можно играть, а сделать целый сад крестному не под силу.
Вечером детей впустили к красавице-елке, возле и на которой были подарки: новые куклы, платья, гусары и пр. Крестный сделал чудесный замок, однако танцующие в нем куклы выполняли одни и те же движения, да и внутрь замка нельзя было попасть, поэтому чудо техники быстро надоело детям – только мать заинтересовалась сложным механизмом. Когда все подарки разобрали, Мари увидела Щелкунчика. Уродливая внешне кукла показалась девочке очень милой. Фриц быстро выломал Щелкунчику пару зубов, пытаясь расколоть твердые орехи, и игрушку стала опекать Мари. На ночь дети убрали игрушки в стеклянный шкаф. Мари задержалась у шкафа, размещая своего подопечного со всеми удобствами, и стала участницей битвы мышиного семиголового короля и армии кукол под предводительством Щелкунчика. куклы сдались под натиском мышей, и когда мышиный король уже подобрался к Щелкунчику, Мари бросила в него своей туфелькой…
Очнулась девочка в кровати с локтем, порезанным разбитым стеклом шкафа. Никто не поверил ее рассказу о ночном происшествии. Крестный принес отремонтированного Щелкунчика и рассказал сказку о твердом орехе: у короля и королевы родилась прекрасная принцесса Пирлипат, но королева Мышильда, мстя за родственников, убитых мышеловками придворного часовщика Дроссельмейера, превратила красавицу в уродца. Успокоить ее теперь могло только щелканье орехов. Дроссельмейер под страхом смертной казни с помощью придворного звездочета вычислил гороскоп принцессы – вернуть красоту ей поможет орех Кракатук, расколотый юношей особенным методом. Король отправил Дроссельмейера и звездочета на поиски спасения; и орех, и юноша были найдены у брата Дроссельмейера в его родном городе. Много принцев сломали зубы о Кракатук, и когда король пообещал выдать дочь замуж за спасителя, вперед вышел племянник. Он расколол орех и принцесса, сьев его, стала красавицей, но юноша не смог выполнить весь обряд, потому что Мышильда бросилась ему под ноги… Мышь погибла, но парень превратился в Щелкунчика. Король выгнал Дроссельмайера, его племянника и звездочета. Однако последний предсказал, что Щелкунчик будет принцем и уродство исчезнет, если он победит мышиного короля и его полюбит прекрасная девушка.
Через неделю Мари выздоровела и стала укорять Дроссельмейера в том, что он не помог Щелкунчику. Тот ответил, что лишь она может помочь, потому что правит светлым царством. Мышиный король повадился вымогать у Мари ее сласти взамен за безопасность Щелкунчика. Родители встревожились тем, что завелись мыши. Когда он потребовал ее книжки и платья, она взяла на руки Щелкунчика и зарыдала – она готова отдать все, но когда ничего не останется, мышиный король захочет загрызть ее саму. Щелкунчик ожил и обещал позаботиться обо всем, если добудет саблю – с этим помог Фриц, недавно отправивший в отставку полковника. Ночью Щелкунчик пришел к Мари с окровавленной саблей, свечой и 7 золотыми коронами. Отдам трофеи девочке, он повел ее в свое царство – Страну Сказок, куда попали через отцовскую лисью шубу. Помогая сестрам Щелкунчика по хозяйству, предложив растолочь в золотой ступке карамель, Мари вдруг проснулась в своей кровати.
Конечно, никто из взрослых не поверил ее рассказу. Про короны Дроссельмайер сказал, что это его подарок Мари на ее двухлетие и отказался признать Щелкунчика своим племянником. Папа пригрозил выбросить всех кукол, и Мари не смела заикаться про свою историю. Но однажды на пороге их дома появился племянник Дроссельмайера, который наедине признался Мари, что перестал быть Щелкунчиком, и сделал предложение разделить с ним корону и трон Марципанового замка. Говорят, она и поныне там королева.