There have been numerous cinematic twists on the classic fairy tales of princesses Snow White, Sleeping Beauty and Cinderella, as well as knowing nods to the genre in movies like Shrek and The Princess Bride.
This average animated adventure, aimed at the youngest of fans, attempts its own angle by seeing things from hero Prince Charming’s (Valderrama) perspective – cursed by Nemeny Neverwish (Nia Vardalos), he is overflowing with charm to the point that every woman in the kingdom has fallen for him, including those famous three princesses. The only way for him to break the curse is to run the gauntlet (completing three ‘impossible’ challenges) before he turns 21 to find true love’s kiss.
Luckily, he crosses paths with tough thief Leonre (Lovato), the one person immune to his charms. Disguised as a man, she agrees to join him on his adventure to help him complete his tasks in return for riches and her own freedom. Gee, what do you think may happen between the prince and his sparky companion before the end credits?
Yes, it’s formulaic, and the in-jokes are thuddingly obvious, but there is some fun to be had. John Cleese garners a few laughs as the executioner (though why he was also drafted in to do a disturbing voice for the Fairy Godmother is anyone’s guess) and Lenore is a likeable hero who is far more interesting than the three princesses Charming thinks he should choose from.
While not on the same level as Shrek or the Disney classics, this is entertaining enough for very young kids who enjoy their fairytales sprinkled with a bit of novelty and some catchy pop tunes performed by Lavigne, Tisdale, GEM, Sia, Lovato, Nick Jonas and The Vamps (and those names don’t make you bounce up and down, this probably isn’t the movie for you, anyway).
Is Charming suitable for kids? Here are our parents’ notes...
There are a few scenes of mild threat, including Charming fighting a rock monster, and one involving a possible execution, but they are not very scary.
Very young viewers may be frightened by Nemeny Neverwish.
If you like this, why not try: