Keeping every character straight on Game of Thrones is a daunting task. What with the incest of the platinum-blond Lannisters, the popularity of bushy beards, and the tendency for long-lost distant relations to show up out of the blue, it's very easy to get all the characters confused. Which might explain why nobody noticed that this actor played two different people on Game of Thrones until now.
Dean-Charles Chapman is known for his role as King Tommen Baratheon, the pint-sized, ill-advised son of Cersei and Jamie Lannister. But that's not the only member of the Lannister-Baratheon clan he has portrayed on the show, as spotted by HelloGiggles. Chapman also played Martyn Lannister in season 3. According to the actor's IMDB page, he appeared as Martyn in two 2013 episodes. No idea who Martyn Lannister is? Well he's dead now, actually. But before his (off-camera) death he was a squire in the Lannister army — and Tommen and Joffrey's first cousin, once-removed.
Here is Chapman as Tommen Baratheon.
And here Chapman is as Martyn Lannister.
So good job pulling a fast one on us all, HBO — it took three years for anyone to notice their cast-recycling trick.