Cet acteur écossais né à Glasgow a étudié à la prestigieuse Royal Scottish Academy of Music and Drama après avoir fait ses débuts à 16 ans dans le film britannique The near room, réalisé par David Hayman. James McAvoy est bien connu du public américain pour incarner Leto II dans la série de Sci-Fi Channel Les enfants de Dune, d'après les livres de Frank Herbert. James McAvoy a également été salué pour son interprétation dans le thriller politique de BBC 1 State of Play et la présentation BBC2 de Early Doors. Il avait précédemment été l'interprète de White Teeth et de Shameless.