Horsfall appeared in many television and film roles including: Pathfinders to Mars (1960), the second sequel to Target Luna, Guns at Batasi (1964), On Her Majesty's Secret Service (1969), Enemy at the Door (ITV, 1978–1980), Gandhi (1982), an episode of The Jewel in the Crown (ITV, 1984), the character Frankland in The Hound of the Baskervilles (ITV, 1988), and the character Balliol in Braveheart (1995). His other roles included portraying British barrister Melford Stevenson in a 1980 Granada Television dramatisation of the 1955 case of Ruth Ellis.