Warner Bros. Animation
There's a half-serious observation in the Batman fandom that the best Batman actors are the ones who feel like they could also pull off playing the Joker. Take Michael Keaton; you know him as Tim Burton's Batman, but if you want to see him as the Joker, just watch the first movie that Keaton and Burton made together before "Batman" — namely, "Beetlejuice."
Christian Bale (hello, Patrick Bateman in "American Psycho") and Robert Pattinson also feel like Dark Knights who could be convincing as the Crown Prince of Crime. Heck, even the late Adam West showed he had some Joker energy in him with his recurring role as the twisted Mayor West on "Family Guy."
There's only one performer who has actually played both Batman and the Joker at the same time, though: voice actor Troy Baker, in the 2019 animated film "Batman vs. Teenage Mutant Ninja Turtles."
The movie, based on the 2015 comic "Batman/Teenage Mutant Ninja Turtles" by James Tynion VI and Freddie Williams II, is exactly what it sounds like. The Shredder comes to Gotham City, teaming up with Ra's Al Ghul in a plot to spread the mutagen that created the Ninja Turtles all across Gotham. So, Batman, Batgirl, and Robin team up with the Turtles to put a stop to this evil scheme — especially when several of Batman's villains get transformed by the mutagen. (Joker, of course, becomes a snake).
The movie was a co-production between Warner Bros. and Nickelodeon. Indeed, the devil may care attitude it takes to make a crossover like this might be one reason why Baker finally got to realize his wildest idea.
Troy Baker is both a great Batman and a great Joker
Warner Bros. Animation
While this was his first time playing both roles together, Troy Baker had experience portraying both Batman and the Joker beforehand. He's one of the most prolific American voice actors working, and noted for his range, so it's not surprising he stepped into both parts at different times.
In 2013, Baker played the Joker in the video game "Batman: Arkham Origins" opposite Roger Craig Smith as Batman. The first two games, "Arkham Asylum" and "Arkham City," had reunited Kevin Conroy as Batman and Mark Hamill as the Joker from "Batman: The Animated Series." Since "Origins" was a prequel, the characters needed to sound younger, and Baker delivered on "Mark Hamill's Joker, minus 20 years." He's since reprised the Joker in a handful of video games and animated films since.
Baker first started voicing Batman in the "Lego Batman" video games and the animated film "Lego Batman: The Movie — DC Super Heroes Unite." The better gauge of his Bruce Wayne, though, is from the Telltale Games' "Batman" series, a point-and-click narrative game where the player must guide the path a young Batman takes. (Anthony Ingruber played the Joker in these games.)
In a behind-the-scenes interview for "Batman vs. Teenage Mutant Ninja Turtles," Baker explained that playing both Batman and Joker together was something he'd wanted to do for a while (see the full video below):
"This has been the greatest lesson in patience, cause I've had this idea for the longest time [...] You never would've thought to cast somebody to do double duty like that before, cause it's stupid, and fortunately there were people that were stupid enough to believe that maybe it could work."
It works because Baker is the type of voice actor who can play multiple characters and you'd never guess it's the same guy speaking into the mic. His natural voice is baritone (just listen to him voicing "Naruto" villain Pain), and so a natural fit for Batman. However, he can also raise the timbre and cut loose for when he's playing the Joker.
Baker's dual casting is not unprecedented, though. Take how Josh Keaton has played both Spider-Man (in "The Spectacular Spider-Man") and Norman Osborn (in the 2017 "Spider-Man" cartoon), or how David Kaye is the only actor who's played both Optimus Prime and Megatron in "Transformers." Playing both the hero and villain in the exact same movie, on the other hand, was definitely taking that to the next level.