In the village of Gavaldon, Sophie (Sophia Anne Caruso) and Agatha (Sofia Wylie), two misfits, are linked by an unexpected friendship. Sophie, a seamstress with messy hair, dreams of escaping her boring life and becoming a princess, while Agatha, with her macabre appearance and strange mother, looks like a real witch. One night, when the red moon reigned in the sky, a powerful force draws them to the School for Good and Evil, the place where the story of every good fairy tale begins. But something is wrong from the very beginning. Sophie ends up at the School for Evil, run by the flamboyant and flamboyant Lady Lesso (Charlize Theron). Agatha arrives at the School for Good, overseen by the smiling and gentle Teacher Dovey (Kerry Washington). As if it wasn’t enough that they attend classes with the children of the Wicked Witch (Freya Parks), Captain Hook (Earl Cave) and the conquering son of King Arthur (Jamie Flatters), according to the Headmaster (Laurence Fishburne), only a kiss from love can change the rules and send them to the right school to follow their true destiny. But the first step to a happy ending is to survive until the end of the fairy tale they live in, which is by no means a certainty, due to the reappearance of a macabre and dangerous figure (Kit Young), who has mysterious ties to Sophie and threatens to destroy the school and the whole world behind it.