Zadebiutował na ekranie w roli Ralpha Stokesa w komedii Gdzie jest wola (Where There’s a Will, 1955) u boku Lesliego Dwyera. Od 8 lipca 1967 do 24 maja 1972 grał postać Davida Callana, agenta tajnych służb państwowych, zajmującego się zagrożeniami bezpieczeństwa wewnętrznego Wielkiej Brytanii w serialu ITV Callan, za którą w 1970 zdobył nagrodę BAFTA TV dla najlepszego aktora. W kultowym brytyjskim horrorze Kult (The Wicker Man, 1973), adaptacji powieści Anthony’ego Shaffera, zagrał rolę policyjnego sierżanta Neila Howiego.

Za główną rolę porucznika Harry’ego „Breakera” Moranta w australijskim dramacie wojennym Bruce’a Beresforda Sprawa Moranta (Breaker Morant, 1980) był nominowany do nagrody Australian Film Institute. W przygodowym filmie fantasy CBS Król Artur (Arthur the King/Merlin and the Sword, 1985) w reż. Clive’a Donnera z Malcolmem McDowellem, Rupertem Everettem, Candice Bergen, Dyan Cannon i Liamem Neesonem wcielił się w postać Merlina. Od 18 września 1985 do 24 sierpnia 1989 grał brytyjskiego agenta Roberta McCalla w serialu McCall (The Equalizer), za którą był pięciokrotnie nominowany do nagrody Emmy dla wybitnego głównego aktora w serialu dramatycznym (1986–1990) i dwukrotnie do nagrody Złotego Globu dla najlepszego aktora w serialu dramatycznym (1987, 1988).