Skyfall, returning director Sam Mendes seemed set to deliver another Bond classic, but unfortunately was unable to repeat his earlier success. For all its failings, however, Spectre managed to avoid making an even greater mistake with its cut villain twist.
Much of the criticism of Spectre rests heavily on the series’ retconning of James Bond's arch-enemy Blofeld as his half-brother. Upon gaining the rights back to Spectre and Blofeld halfway through Craig's era as Bond, the series dropped Quantum as the main villainous organisation in favour of Spectre and retconned Blofeld as being the architect of all Bond's misfortunes. Notwithstanding this, Ralph Fiennes revealed a cut twist for Spectre would have had his version of M be the main villain, something that Fiennes fought hard against, saying:
"I think I can say now that I had to fight off an attempt by Sam in ‘Spectre’ to make M – I said I don’t want to play M and then you turn around and make him the bad guy. M is never the bad guy. So I had to have some pretty intense discussions with Sam saying, ‘This is not fine with me…’ It was like he was Blofeld or something, but that was a red line.”
While it's important to note that Ralph Fiennes’ comments suggest he would've been a Blofeld-Esque villain (i.e. the Big Bad), rather than literally being Blofeld, he was nevertheless right to fight against this twist. His character Mallory had already been a soft antagonist in Skyfall, before eventually revealing himself as a hero and ally to Bond, earning his role as the new M at the end of the film. Discounting this as a double-cross in Spectre would have undermined that earlier character arc. Equally, Daniel Craig's James Bond movies have gone to great lengths to delve into Bond's relationships and struggles with his friends and colleagues at MI6 far more than in earlier films in the series. If M was revealed to be the villain of Spectre, then it would have largely undercut the weight of those struggles.
Fiennes is adept at playing villains and is arguably more familiar to audiences as an antagonist, with his roles as Voldemort in the Harry Potter series, and a Nazi war criminal in Schindler's List among his most famous performances. But having Spectre make his M a villain would have been too much of a twist. The complicated yet endearing relationship between James Bond and M goes to the heart of the spy's character all the way back to Ian Fleming's novels. To have that relationship revealed as a facade would be a disservice to a classic Bond character that is a cornerstone of the series.
The villain-in-MI6 twist was somewhat retained in Spectre in a diluted form, with Andrew Scott's Max Denbigh inheriting the duplicitous role as a secondary villain to Christoph Waltz’s Blofeld. Ironically it is then M rather than Bond that foils Denbigh's plans in the end. While not enough to outweigh the movie's other failings, it does allow for Fiennes to reprise his role in James Bond’s story.