Formé à l’Académie de Mountview of Theatre Arts, Eddie Marsan débute à la télévision anglaise en 1992. Il y jouera dans de nombreux téléfilms et séries télévisées, dont Ray Donovan (2013-2020). Au cinéma, il a une prédilection pour les rôles de méchant. Il y fait d’ailleurs ses débuts avec un rôle d’agresseur dans L’homme qui en savait trop… peu (1997) de Jon Amiel. On le voit ensuite dans plusieurs longs métrages dont Gangs of New York (2003) de Martin Scorsese et 21 grammes (2004) d’Alejandro González Iñárritun, dans un personnage de révérend.
Eddie Marsan obtient le British Independent Film Award du meilleur acteur dans un second rôle pour Vera Drake (2004) de Ken Loach. Il sera également nommé dans cette catégorie pour Be-Happy (2008) de Mike Leigh, Tyrannosaur (2011) de Paddy Considine et Ordure ! (2013) de John S. Baird. Partagé entre les studios britanniques et hollywoodiens, Eddie Marsan est remarqué dans Le nouveau monde (2005) de Terrence Malick, Mission : Impossible 3 (2006) de JJ Abrams, ou Miami Vice – Deux flics à Miami (2006) de Michael Mann. Il est tout aussi bon dans des films moins connus comme The Last Hangman (2005) d’Adrian Shergold ou La disparition d’Alice Creed (2009) de J Blakeson.
Dans les années 2010, Eddie Marsan ne ralentit pas le rythme des tournages. Il est primé au Festival de Moscou pour Junkhearts (2011) de Tinge Krishnan. Et Il obtient un beau succès personnel avec Une belle fin (2015) d’Uberto Pasolini, qui lui vaut plusieurs récompenses dont un prix d’interprétation au Festival 2 Valenciennes. Parmi ses autres rôles, on peut citer le sergent dans Cheval de guerre (2011) de Steven Spielberg, le médecin de Seul contre tous (2015) de Peter Landesman, ou l’oncle dans Golem, le tueur de Londres (2016) de Juan Carlos Medina. Eddie Marsan est du casting de Flag Day, présenté en compétition officielle au Festival de Cannes 2021.