James Marsters est le deuxième enfant d'une famille de trois. Passionné de théâtre, et de William Shakespeare en particulier, il fonde le New Mercury Theatre.
Il fait ses études au Davis High School à Modesto, en Californie, puis fréquente trois universités différentes : la Juilliard School, le Pacific Conservatory of the Performing Arts (une école d'arts), ainsi que l'American Conservatory Theatre (une école de théâtre).
C'est en interprétant le rôle du vampire Spike, dans la série fantastique Buffy contre les vampires de 1998 à 2003 que James Marsters accède à la notoriété internationale, à partir de 1997. Son rôle, intialement prévu pour seulement quelques épisodes, se révèle indispensable au développement de la série. Il le reprend d'ailleurs dans la série dérivée Angel, lors de la cinquième et dernière saison (2003). Par la suite, James Marsters multiplie les apparitions dans des séries essentiellement fantastiques, et notamment dans huit épisodes de Smallville, en 2005.