مدرسه‌ای برای خوب‌ها و بدها (فیلم)
داستان

برادران دوقلو، ریان و رافال، در یک دوئل دوستانه شرکت می‌کنند. رافال، برادر شرور، تشنهٔ چیزهای بیشتری است و از جادوی خون برای حملهٔ ناگهانی به برادرش استفاده می‌کند. با این حال، ریان، برادر خوب، موفق می‌شود در آخرین ثانیه بر او غلبه کند و رافال را از صخره‌ای به پایین پرتاب کند که ظاهراً او را می‌کشد.
دو شخصیت از طریق صدای یک راوی معرفی می‌شوند، سوفیِ مو روشن و پرنسس‌مانند و بهترین دوستش آگاتا، که اولی «قرار است دنیا را تغییر دهد» و دومی با طعنه و تهدید روزانهٔ اهالی شهر روبرو می‌شود که او را یک جادوگر می‌نامند. این دو علیرغم اینکه کاملاً متضاد هستند، پیوند محکمی با هم دارند. دختران در جستجوی افسانه‌های جدید از فروشگاه کتاب داستان دوویل بازدید می‌کنند و مغازه‌دار در مورد «مدرسه خیر و شر» به آن‌ها می‌گوید. او توضیح می‌دهد که چگونه افسانه‌ها در این مدرسه آغاز می‌شوند، جایی که قهرمانان و تبهکاران در مدارس مربوطهٔ خود آموزش می‌بینند. آگاتا بدبین است، اما سوفی هیجان زده‌است. مغازه‌دار در مورد دختری به نام لئونورا به آن‌ها می‌گوید که ۲۰ سال پیش در یک رویداد «ماه خونی» برده شد و دیگر هرگز دیده نشد. سوفی نامه‌ای به مدرسه می‌نویسد و آرزو می‌کند که زندگی روزمره خود در گاوالدون را برای چیز دیگری رها کند.
در آن شب، سوفی سعی می‌کند مخفیانه آنجا را ترک کند اما آگاتا سعی می‌کند جلوی او را بگیرد. آن‌ها متوجه می‌شوند که آسمانِ شب سرخ‌رنگ است. سپس موجودی ظاهر می‌شود و سوفی و آگاتا را به جنگل می‌کشاند. این موجود آن‌ها را به یک استمف (پرندهٔ استخوانی) غول‌پیکر رها می‌کند که سپس هر دو دختر را می‌رباید و آن‌ها را به «مدرسه خیر و شر» می‌فرستد. سوفی در مدرسه‌ای برای «شر» رها می‌شود، در حالی که آگاتا به مدرسه «خیر» تحویل داده می‌شود. سوفی ناامیدانه اعلام می‌کند که مدرسه‌اش اشتباه است در حالی که آگاتا می‌خواهد به خانه برگردد. دختران یونیفورم مربوطهٔ خود را می‌پوشند: یک لباس پرنسسی گلدار برای آگاتا و یک لباس گونی بریده برای سوفی.
در طول مراسمِ استقبال، سوفی و آگاتا هر دو مجذوب تِدروس، محبوب‌ترین شاهزادهٔ تاریخ، می‌شوند. از آنجا که دختران با «همیشگان» (Evers؛ دانش‌آموزان مدرسه «خیر») و «هرگزان» (Nevers؛ دانش‌آموزان مدرسهٔ «شر») مناسب نیستند، مطرود می‌شوند. آگاتا برای یافتن سوفی تلاش می‌کند تا به سمت «شر» نفوذ کند، اما مجسمهٔ کوپیدو او را تعقیب می‌کند. او به کتابخانه می‌رسد و بحثی بین پروفسورها را می‌شنود. وقتی آن‌ها می‌روند، رافال ظاهر می‌شود و به آگاتا هشدار می‌دهد که از سوفی دور بماند. آگاتا دوباره با سوفی متحد می‌شود و آن‌ها به دنبال ریان می‌گردند. این دو وارد برج او می‌شوند و «اِستوریان یا داستان‌سرا» را پیدا می‌کنند، کتابی غول‌پیکر که داستان هر شخصیت را می‌نویسد. اگر سوفی بتواند عشقِ واقعی خود را بیابد، ریان به او اجازه می‌دهد تا مدرسهٔ خود را تغییر دهد، زیرا استدلال می‌شود که فقط «همیشگان» قادر به یافتن عشق واقعی خود هستند.
صبح روز بعد، دختران در کلاس درس حاضر می‌شوند. سوفی نامه‌ای به آگاتا می‌دهد تا به دست تِدروس برساند، زیرا او به این نتیجه رسیده‌است که تِدروس عشق واقعی اوست. آگاتا نامه را پیش از کلاس به وی تحویل می‌دهد و آن‌ها لحظه‌ای کوچک را با هم به اشتراک می‌گذارند. بعداً، سوفی و تِدروس بالاخره با هم صحبت می‌کنند، اما سوفی به دلیل امتناع از ادغام با طرف «شر» به اتاق عذاب کشیده می‌شود، که در جریان آن پروفسور لسو موهایش را کوتاه می‌کند. رافال از طریق آینه به سوفیِ ویران‌شده نزدیک می‌شود و او را متقاعد می‌کند که برای به‌دست آوردن تِدروس، هر کاری که لازم است انجام دهد. در حین بازکردن درخشش انگشتانِ دانش‌آموزان، سوفیِ شیطانی و تازه اعتماد به نفس وارد می‌شود، که خودش را تغییر داده‌است، که باعث ناراحتی آگاتا می‌شود. مونتاژی نشان می‌دهد که سوفی با آنادیل، دات و هستر دوست می‌شود و طرفداری «هرگزان» را به دست می‌آورد. آگاتا به سوفی توصیه می‌کند که اگر علاقه‌ای به تدروس دارد، باید ثابت کند که قلبش پاک است. آگاتا از جادوی خود استفاده می‌کند تا مخفیانه در کمان‌اندازی به سوفی کمک کند و تِدروس متقاعد می‌شود که او خوب است و قول می‌دهد او را به مراسم رقص آینده بیاورد. از آنجا که رابطهٔ عاشقانه بین «خیر» و «شر» ممنوع است و باعث هرج‌ومرج می‌شود، مدیر تصمیم می‌گیرد که تنها راه حل برای این مسئله، یک «محاکمه از طریق داستان» است.
سوفی و تِدروس باید به تنهایی در جنگل زنده بمانند، با خطرات مبارزه کنند و تا طلوع خورشید یکدیگر را پیدا کنند. اما آگاتا برای کمک به سوفی مخفیانه وارد جنگل می‌شود. تِدروس تقریباً توسط یک درو کشته می‌شود که آگاتا را مجبور می‌کند تا جان او را نجات دهد. تِدروس که متوجه می‌شود که سوفی در واقع «خوب» نیست، او را رها کرده و آگاتا را برای همه‌چیز سرزنش می‌کند. آنادیل که به دلیل تقلب در اتاقش قفل شده‌است، نامه‌ای صمیمانه از آگاتا را به سوفی می‌دهد، اما رافال، سوفی را متقاعد می‌کند که آگاتا دشمن اوست و او تنها شخص که در کنار اوست. رافال به سوفی جادوی خون را پیشنهاد می‌کند که او می‌پذیرد. سوفیِ تازه قدرتمند با لسو روبرو می‌شود که مشخص شده لئونورا است. سوفی، که اکنون از نظر فیزیکی به یک پیرزنِ زشت تبدیل شده‌است، وارد جشن می‌شود. آگاتا سعی می‌کند به او برسد، اما سوفی او را دشمن خود اعلام می‌کند. تِدروس تصمیم می‌گیرد سوفی را نابود کند و به مدرسه «شر» می‌رود. از آنجایی که «خیر» هرگز اول حمله نمی‌کند و فقط می‌تواند دفاع از خود کند، تِدروس باعث می‌شود که «همیشگان» و «هرگزان» طرف‌های خود را تغییر دهند. سوفی در این روند به شکلِ اصلی خود بازمی‌گردد و در حالی که آگاتا از آن‌ها التماس می‌کند که متوقف شوند، یک نبرد حماسی بین دو طرف درمی‌گیرد.
سوفی تبدیل به یک کلاغ می‌شود و از نبرد به سمتِ برج مدیر می‌گریزد و به دنبال انتقام است. مدیر که اکنون که خود را به‌عنوان رافال نشان می‌دهد، افشا می‌کند که سوفی را برای یافتن عشقِ واقعی خود آزمایش می‌کرد تا به «قدرتِ نهایی» دست یابد. یک فلاش‌بک نشان می‌دهد که رافال در واقع از سقوط جان سالم به در برده بود و ضربهٔ نهایی را به برادرش وارد کرده‌است و هویت وی را برای چند قرن آینده فرض کرده تا داستان‌ها را دستکاری کند و «خیر» را ضعیف کند. سوفی و رافال همدیگر را می‌بوسند که در نتیجه تمام افراد مدرسه را محکوم به مرگ می‌کند، و به «شر» یعنی رافال اجازه می‌دهد تا بر جهان حکومت کند. با ظاهرشدن آگاتا، سوفی احساس پشیمانی می‌کند. رافال سعی می‌کند آگاتا را با قیچی اِستوریان بکشد، اما سوفی جلوتر می‌رود و به جای او مورد اصابت قرار می‌گیرد. این باعث می‌شود همه چیز به حالت عادی برگردد و نقشه‌های رافال خنثی شود. سپس تِدروس مخفیانه وارد می‌شود و به رافال حمله می‌کند، اما سوفی، که در حال مرگ است، با آگاتا متحد می‌شوند تا یک بار برای همیشه رافال را شکست دهد. آگاتا، سوفی را در آغوش می‌گیرد و به او می‌گوید که او را دوست دارد که دومی در نهایت می‌میرد. او سوفی را می‌بوسد و روی بدنش گریه می‌کند و اشک‌هایش زخم سوفی را خیس می‌کند. ناگهان سوفی دوباره نفس می‌کشد، عشق واقعی آن‌ها به اندازه کافی قدرتمند است که او را به حیات برگرداند.
دنیای افسانه‌ها نجات می‌یابد و دانش آموزان «خیر» و «شر» از باهم‌بودن خوشحال می‌شوند. درگاهی به سوی گاوالدون باز می‌شود. آگاتا، تِدروس را می‌بوسد و اظهار می‌کند که نمی‌تواند دوستش را ترک کند و دخترها با هم به زندگیِ قبلی خود بازمی‌گردند. در حالی که یک تیر از تِدروس پردهٔ بین دو دنیای آن‌ها را می‌شکافد، صدایِ او شنیده می‌شود که می‌گوید که به آگاتا نیاز دارد. راوی فیلم را به اتمام می‌رساند، و در آخر فاش می‌شود است که «این تنها آغاز داستان است».