15 Actors Who Played the Same Character for a Ridiculous Amount of Time

Most actors eventually get to put a character’s wardrobe away and move on with their lives. These people were not so lucky. Some spent decades showing up to the same television set, while others thought they had retired a role only for Hollywood to come calling again 10 or 20 years later. By the end, a few had played their characters across entirely different eras of television, multiple generations of co-stars, and enough sequels to make the original installment feel ancient. One actor even started the job in 1960 and is still doing it. At that point, calling it a role almost feels inadequate. Here are 15 actors who played the same character for a ridiculous amount of time.

IMDb

William Roache as Ken Barlow

Roache first appeared as Ken Barlow when Coronation Street premiered in 1960. More than six decades later, he still holds the record for the longest time playing one TV role.

IMDb

Leonard Nimoy as Spock

Nimoy debuted as Spock on Star Trek in the 1960s and made his final appearance in Star Trek Into Darkness in 2013, nearly five decades later.

IMDb

Jamie Lee Curtis as Laurie Strode

Curtis first faced Michael Myers in 1978’s Halloween. She finally said goodbye to Laurie Strode with Halloween Ends in 2022, 44 years later.

IMDb

Anthony Daniels as C-3PO

Daniels first climbed into C-3PO’s gold suit for Star Wars in the 1970s. He was still playing the anxious protocol droid in The Rise of Skywalker decades later.

IMDb

Sylvester Stallone as Rocky Balboa

Stallone introduced Rocky in 1976 and was still dispensing advice as the boxer in Creed II in 2018. That is 42 years of inspirational speeches and stairs.

IMDb

Kelsey Grammer as Frasier Crane

Frasier Crane arrived on Cheers in 1984, got his own show, disappeared for nearly 20 years, then returned. Grammer hit 40 years with the character in 2024.

IMDb

James Arness as Matt Dillon

Arness spent 20 straight years playing Marshal Matt Dillon on Gunsmoke, then returned for TV movies that stretched his association with the character from 1955 into the 1990s.

IMDb

Michael Dorn as Worf

Dorn started playing Worf on Star Trek: The Next Generation in 1987. After more Trek shows and movies, he put the forehead back on for Picard in 2023.

IMDb

Maurice Benard as Sonny Corinthos

Benard joined General Hospital as Sonny Corinthos in 1993. Aside from a brief break in the 1990s, he has spent more than three decades causing trouble in Port Charles.

IMDb

Sam Waterston as Jack McCoy

Waterston joined Law & Order as Jack McCoy in 1994 and eventually logged more than 400 episodes. He finally left the role in 2024, three decades after starting.

IMDb

Mariska Hargitay as Olivia Benson

Hargitay has played Olivia Benson since Law & Order: SVU premiered in 1999. By 2026, she had spent 27 years with the character and passed 600 franchise episodes.

IMDb

Ice-T as Fin Tutuola

Ice-T joined SVU as Fin Tutuola in 2000 and somehow never really left. More than 25 years later, he is still working cases alongside Benson.

IMDb

David Suchet as Hercule Poirot

Suchet spent nearly 25 years as Hercule Poirot, appearing in 70 adaptations between 1989 and 2013. He stayed long enough to exhaust essentially every major Poirot story Christie wrote.

IMDb

Hugh Jackman as Wolverine

Jackman first popped the claws in 2000’s X-Men. When Deadpool & Wolverine arrived in 2024, he had been associated with Wolverine for 24 years.

IMDb

Richard Belzer as John Munch

Belzer started playing Detective John Munch on Homicide in 1993 and carried him across multiple TV universes until 2016. Munch somehow showed up on at least 10 different series.