His first film role was in Lindsay Anderson's film If.... (1968). He also appeared in Anderson's O Lucky Man! (1973) and Britannia Hospital (1982). His other film credits include roles in Amadeus (1984), A Christmas Carol (1984), Gulag (1985), Heavenly Pursuits (1986), Little Dorrit (1987), The Great Escape II: The Untold Story (1988), Loch Ness (1996), The House of Mirth (2000), The Rocket Post (2004), Vanity Fair (2004) and Lassie (2005).