Home Celebrities

Andrew Garfield, Florence Pugh, and 12 other actors who were way older than the characters they played

My perception of what teenagers are supposed to look like has forever been warped by Hollywood.

Andrew Garfield as Peter Parker in 'The Amazing Spider Man 2'.
Image via Marvel/Sony

Acting is magic and, while Scarlett Johansson was wrong when she said she should be able to play “any person, tree or animal” when confronted with her choice to play an Asian character, there are some liberties actors can take when choosing the characters they take on. One of those is age — a factor that has been virtually made moot by the advent of make-up and CGI.

Recommended Videos

As a result, Harrison Ford has been able to reprise his character of Indiana Jones in flashback scenes set in the 1940s, when his character was 35 years old, despite Ford being 79 during filming. Al Pacino and Robert De Niro were also de-aged significantly for part of their life-spanning roles in Martin Scorsese’s The Irishman.

The reverse is where makeup tends to enter the conversation. Mandy Moore was younger than all of her on-screen children when she played 70-year-old Rebecca Pearson in This Is Us. Still, the characterization and her performance were so accurate that it was easy to bite into the illusion.

Then there are contractual obligations and, obviously, child labor laws. These come into play when television shows and movies include characters that are younger than 18. Some creative teams are adamant about hiring age-appropriate performers, but if those young characters are the leads instead of supporting roles, that can be tricky. Child labor laws would mean the filming would take much longer because kids cannot work the long hours of their adult counterparts. Consequently, in all your favorite high school shows and films, the teenagers are played by grown adults, with ages that can even surpass 30 years old. This list features a lot of those instances.

Alexa Demie

Alexa Demie as Maddy Perez in season 2 of HBO's 'Euphoria'.
Image via HBO

For a while, no one really knew Alexa Demie’s age. Different interviews claimed she was 24 or 29, but it was all put to rest when one of her old classmates posted a TikTok that showed Demie in her yearbook as part of the class of 2007. The internet now shows her birthday as being Dec. 11, 1990, which makes her 32 in 2023.

Demie was 29 when she first started playing Euphoria‘s Maddy Perez, a 17-year-old teenager. With how long it’s taken for new seasons of the show to come out, the actress will be over 33 when she reprises her role. In the show, if there are no significant time jumps, Maddy will be 19.

Barbra Streisand

Barbra Streisand in 'Yentl'.
Image via United Artists/MGM

Yentl was not an easy film to make. The 1983 musical was stuck in development purgatory for 15 years before Barbra Streisand was finally given the chance to make it, on her own terms. The age gap between the actress and the character was a factor in the repetitive rejections from production companies, seeing as Yentl is 16 in the source material that inspired Streisand to make the film.

In order to get it greenlit, the award-winning actress changed the age of the protagonist to 26. By the time Streisand got to make the film, which she also co-wrote, co-produced, and directed, she was 40, thus still putting a significant 14-year-old distance between her and Yentl.

Shirley Henderson

Shirley Henderson as Moaning Myrtle in 'Harry Potter and the Chamber of Secrets'.
Image via Warner Bros.

Shirley Henderson’s age is a classic piece of Harry Potter trivia. Every Potterhead will know that the Scottish actress was 37 years old in Harry Potter and the Chamber of Secrets and 40 in Harry Potter and the Goblet of Fire, where she played the slightly offputting but ultimately friendly bathroom ghost Moaning Myrtle.

Myrtle, a Muggle-born witch who was killed by the Serpent of Slytherin, was 14 in both films, making Henderson the oldest person playing a teen in the franchise. The reason for her casting was reportedly so that she wouldn’t look any older when reprising the role in future films, seeing as she was a ghost. A younger actor would have probably looked noticeably older with each passing year.

Sigourney Weaver

kiri avatar the way of water
Image via 20th Century Fox

Sigourney Weaver is the unchallenged champion of the character age gap wars. With a 59-year-old difference from her Avatar: The Way of Water character, Weaver easily beats all other entries in this list. The celebrated actress was 73 playing 14-year-old Kiri in James Cameron’s sequel to 2009’s Avatar.

Thanks to the wonders of CGI and motion capture, Weaver was able to not only become the model for the Na’vi character but also lend her her voice. Kiri is the daughter of Weaver’s now-defunct character in the first film, Dr. Grace Augustine.

Cory Monteith and Harry Shum Jr.

Harry Shum Jr. and Cory Monteith as Mike and Finn on 'Glee'.
Image via Fox

The cast of musical comedy sensation Glee and most other teen shows was entirely made up of actors who were older than their characters. While Chris Colfer was the closest to 16-year-old Kurt Hummel, joining the show at 19, the actors with the most years separating them from their roles were Cory Monteith (Finn), Harry Shum Jr. (Mike), and Mark Salling (Puck).

Both Monteith and Shum Jr. were 27 when they joined the show to play 16-year-old high schoolers. Salling was 26, but reportedly lied in his audition about being 19 in order to get the job. To put things into perspective, the actors playing their teachers were almost the same age as these three. Mr Schuester was played by 30-year-old Matthew Morrison and Jayma Mays was only 29 when she started playing guidance counselor Emma.

Florence Pugh

Florence Pugh as Amy March in Greta Gerwig's 'Little Women'.
Image via Columbia Pictures

Greta Gerwig’s Little Women is a fantastic film for a lot of things, but the age appropriateness of its cast is not one of them. In the director’s defense, the events of both the book and the film encompass 15 years, which would have meant having to cast two different sets of March sisters in order to successfully portray them as young teens and then as women in their 20s.

Florence Pugh’s Amy March is the youngest of the bunch, starting the film at only 13. Although Pugh looks youthful, it’s hard to bite into the illusion that she’s that young in those first scenes. Thankfully, time moves rather fast, and soon enough Amy is 18 — an age that Pugh could easily pass as at 22 years old.

Emilia Clarke

Drogon hatching.
Image via HBO

Daenerys Targaryen is infamously young in the first book that inspired the HBO mega-hit Game of Thrones. Given the nature of her sexually violent storyline, the character had to be aged up to fit TV standards, making Dany 17 at the start of the show. Nevertheless, that still places a significant age gap between the Mother of Dragons and actress Emilia Clarke.

Clarke was 23 when she began filming Game of Thrones, putting six years between her and Daenerys. By season eight, the character was 24 and the actress 32, lengthening the gap to 8 years.

Chase Stokes

Chase Stokes as John B on 'Outer Banks'.
Image via Netflix

Chase Stokes might be about to turn 31, but his Outer Banks character is still the same age as he was in season 1, back in 2020. That means Stokes will be around 14 years older than Pogues leader John B. by the time season four hits Netflix.

The actor was 27 when the show first premiered, which is still an entire decade older than his teenage character. The age gaps were not as severe among the rest of his cast mates. Madelyn Cline, who plays John B.’s love interest in the show and became Stokes’ girlfriend in real life for a period of time, was 23 at the time of season one’s premiere.

Andrew Garfield and Tobey Maguire

Tobey Maguire (L) and Andrew Garfield (R) as Peter 2 and Peter 3 in Marvel's 'Spider-Man: No Way Home'.
Image via Marvel Studios

The debate about which actor gave us the best rendition of Peter Parker/Spider-Man is practically impossible to resolve, but the winner for the most age-appropriate casting is undeniable. Tom Holland was only 19 when he was introduced as the 14-year-old web-slinger in Captain America: Civil War.

A far cry from the whopping 10-year age gap separating Andrew Garfield from his version of Peter, who was 17 at the start of 2012’s The Amazing Spider-Man. By the time The Amazing Spider-Man 2 rolled around, Garfield was 30 playing a high schooler about to graduate. Tobey Maguire wasn’t much younger when he donned the famous red and blue costume. He was 26 during Spider-Man 1, and 32 playing a 20-year-old Peter in Spider-Man 3.

Darren Charles Barnet

Image via Netflix

As you’ve probably noticed while making your way down this list, Hollywood loves casting a 30-year-old to play a teenager. But while some grown men and women can still convincingly play a teen (see: the next entry on this list), Never Have I Ever‘s Darren Charles Barnet, as desperately handsome as he is, looks exactly his age.

The actor was around 29 playing 17-year-old junior swimmer Paxton Hall-Yoshida in the first season of the Mindy Kaling Netflix show. By season four the character becomes a college freshman, but even then, Barnet’s ripe age of 31 was already a bit too distanced from his role.

Nicola Coughlan

Nicola Coughlan as Clare Devlin on 'Derry Girls'.
Image via Channel 4/Netflix

Most people are shocked to learn that Derry Girl‘s Clare Devlin and Bridgerton’s Penelope are actually in their 30s. The fresh-faced actress is so convincing at playing a teenager that you would never guess she is much older in real life.

Irish player Nicola Coughlan is 36 now, but she was 31 when the first season of Derry Girls first came out in 2018, while her character was just 16. Equally, the character that put Coughlan on the map as part of one of Netflix’s most popular shows Bridgerton was 17. By then, the actress was already 32, making it a 15-year age gap. Season three is set to upgrade Penelope to a main character, putting Coughlan in the spotlight she’s so rightfully earned.

Jason Earles

Jason Earles as Jack Steward on Disney Channel's 'Hannah Montana'.
Image via Disney

It’s always hard to burst childhood bubbles, but we’re here to tell you Jackson from Disney Channel’s Hannah Montana was actually 15 years older than Miley in real life. It doesn’t happen often that actors playing more or less the same age are that many years apart, which is what makes this instance so particular.

Jason Earles was 28 playing 15-year-old Jackson Stewart (nothing too strange given what we’ve learned throughout this list), but Miley Cyrus was 13 playing 13. Even though the fictional siblings were only three years apart, the two actors had a much wider gap. The actor was 33 by the time the show ended despite his character being 19.