Ele fez o papel de Howard Stark no filme Capitão América: O Primeiro Vingador. Seus outros créditos em filmes incluem Fazendo História, Dublê do Diabo, Warcraft: O Primeiro Encontro de Dois Mundos e Mamma Mia!. Posteriormente, estrelou a série Preacher, da AMC.
Sua primeira atuação em peça teatral foi em Molly House.
Ele trabalhou no aclamado filme Educação.
Ele namorou com a atriz Amanda Seyfried e depois com a também atriz Ruth Negga. Ele namora com Gemma Chan desde 2018.
Ele teve um papel coadjuvante no filme Sete Dias com Marilyn, que foi estrelado por Michelle Williams.