سوفی ، فرزك جوان و بزرگتر از سه خواهر ، در راه رفتن به دیدار خواهرش لتی با جادوگری به نام زوزه روبرو می شود. پس از بازگشت به خانه ، وی با جادوگر زباله آشنا می شود که او را به زنی نود ساله تبدیل می کند. سوفی به دنبال شکستن نفرین ، خانه را ترک می کند و راهی حومه شهر می شود. او با یک مترسک زنده که او را “سر شلغم” صدا می کند آشنا می شود. او را به قلعه در حال حرکت زوزه هدایت می کند جایی که او بدون دعوت وارد آن می شود. وی متعاقباً با كارآموز جوان هاول ، ماركل ، و یك دیو آتش به نام كالیسفر كه منبع جادو و حركت قلعه است ، ملاقات می كند. وقتی زوزه ظاهر می شود ، سوفی اعلام می کند که “خودش را به عنوان یک خانم تمیز کننده استخدام کرده است”. در حقیقت ، کالسیفر با سوفی معامله ای انجام داد تا اگر رابطه خود را با زوزه قطع کرد ، نفرین او را بشکند.
در همین حال ، ملت سوفی درگیر جنگ با پادشاهی همسایه می شوند ، که در جستجوی شاهزاده گمشده خود است. پادشاه زوزه را برای جنگ در جنگ احضار می کند. با این حال ، هاول تصمیم می گیرد سوفی را به بهانه مادر (به بهانه مادر بودن) به او بفرستد تا به او بگوید که زوزه بیش از حد ترسویی برای جنگیدن است. قبل از عزیمت ، او یک حلقه جذاب به سوفی می دهد که او را به سمت کلسیفر هدایت می کند و امنیت او را تضمین می کند. سوفی با سلیمان ، جادوگر سر پادشاه ، و همچنین جادوگر زباله ملاقات می کند ، که سلیمان او را با تخلیه تمام قدرت و بازگشت او به سن واقعی خود ، یعنی پیرزنی بی خطر ، مجازات می کند. سلیمان به سوفی هشدار می دهد که هاول در صورت عدم جنگ برای پادشاه ، به همان سرنوشت دچار خواهد شد. هاول سپس برای نجات سوفی می رسد. سلیمان سعی می کند با تبدیل او به یک هیولا او را به دام بیندازد ، اما با کمک سوفی خودش را به یاد می آورد و به سختی از مرگ جلوگیری می کند. این دو نفر به همراه Witch of the Waste سابق و سگ سلیمان Heen فرار می کنند. در این بین ، سربازان از هر پادشاهی به خانه های جنکینز و پندراگون (نام مستعار هاول در آن پادشاهی ها) وارد می شوند. با این حال ، مردان فقط یک حیاط و انبار خالی پیدا می کنند ، زیرا طبیعت جادویی قلعه امکان سفر بین 4 اقامتگاه جداگانه را فراهم می کند.
سوفی می فهمد که زندگی هاول به نوعی به کالسیفر ملزم است و هاول در حال تبدیل شدن به موجودی پرنده مانند برای دخالت هر دو طرف در جنگ است ، اما هر تغییر شکل بازگشت او به شکل انسان را دشوارتر می کند. زوزه سپس قلعه را به طرز جادویی با خانه سوفی پیوند داده و قلعه را در حومه شهر پارک کرده است. چند روز بعد ، شهر توسط هواپیماهای دشمن بمباران می شود و دژخیمان سلیمان به خانه و فروشگاه کلاه سوفی حمله می کنند. برای محافظت از گروه به بیرون زوزه می کشد. سپس سوفی همه را از خانه بیرون می کند و کلسیفر را از شومینه که قلعه را فرو می ریزد ، خارج می کند. جادوگر زباله متوجه می شود که کلسیفر قلب زوزه را دارد و دیو آتش را می گیرد و خود را به آتش می کشد. سوفی وحشت می کند و آب را به جادوگر می ریزد ، که کالسیفر را خفته می کند. باقیمانده قلعه سپس به دو قسمت تقسیم می شود. سوفی در شکافی افتاده و از گروه جدا می شود.
سوفی به دنبال حلقه جذاب ، در صحنه ای از گذشته سرگردان می شود ، جایی که می بیند زوزه جوانی یک ستاره در حال سقوط – کلسیفر – را می گیرد و قلبش را به او می دهد. سوفی از آنها می خواهد که در آینده از راه دور از راه دور او را پیدا کنند. او به زمان حال برمی گردد ، هاول را پیدا می کند ، و آنها با دیگران متحد می شوند. جادوگر قلب زوزه را برمی گرداند ، و سوفی آن را دوباره در داخل زوزه قرار می دهد ، او را احیا می کند و کلسیفر را آزاد می کند ، اگرچه او تصمیم می گیرد که بماند. نفرین سوفی شکسته است ، اگرچه موهای او سفید باقی مانده است – نمادی برای نشان دادن سالم بودن یادگیری و بلوغ او. پس از آنکه او گونه را با شلغم بوسید ، او به شکل انسانی بازگشت و خود را جاستین ، شاهزاده گمشده از پادشاهی دشمن دانست. او فاش می کند که فقط بوسه عشق واقعی او می تواند نفرین او را بشکند. او پس از دیدن علاقه سوفی به زوزه ، بی درنگ به سمت خانه می رود تا جنگ را متوقف کند. سلیمان نیز در حال تماشای یک کره کریستالی ، تصمیم می گیرد جنگ را خاتمه دهد. مدتی بعد ، بمب افکن ها در زیر آسمان تاریک بر فراز حومه ای بهبود یافته و سرسبز به جنگ دیگری می روند ، در حالی که سوفی ، هاول و دیگران در خلاف جهت حرکت در یک قلعه پرنده جدید حرکت می کنند.