Attualmente attivo come commentatore per l'emittente televisiva britannicaBT Sport,[2] con 1.023 incontri disputati, rientra nella ristretta cerchia deicalciatori con almeno 1000 presenze in carriera.
Considerato in giovane età una promessa del calcio inglese, non riuscì mai a soddisfare pienamente le aspettative, anche a causa di uno stile di vita fuori dal campo decisamente sregolato.
Portiere roccioso ma allo stesso tempo dotato di un'ottima agilità e capacità di reazione, aveva tuttavia il grande difetto di essere molto incostante. Alternava grandi parate a errori incredibili e spesso imbarazzanti, questo gli valse il poco lusinghiero soprannome diCalamity James.
James ha cominciato la propria carriera alWatford, nel 1989. Nel 1992 fu comprato dalLiverpool. Dopo 11 match alquanto negativi, l'allenatoreGraeme Souness lo sostituì. Con l'arrivo diRoy Evans sulla panchina deiReds James tornò titolare ma senza gloria, a causa di numerosi errori, fino al 1999. In quell'anno il Liverpool acquistò lostatunitenseBrad Friedel e cedette l'inglese all'Aston Villa per l'importante cifra di 23 milioni.Nell'estate 2001 James si trasferì alWest Ham per 19 milioni, squadra con cui retrocesse inFootball League. Nel giugno 2004 è tornato inPremier League, acquistato dalManchester City per la cifra di 8 milioni. Nell'agosto 2006 il City lo ha ceduto alPortsmouth per 1,2 milioni di sterline: insieme a lui sono arrivati nelloHampshire giocatori famosi comeSol Campbell,Lauren eNwankwo Kanu e l'allenatoreHarry Redknapp.
AlPortsmouth James ha trovato una costanza di rendimento che gli ha permesso di eguagliare il record diDavid Seaman di 141 match diPremiership consecutivi. Ciò gli ha permesso anche di diventare capitano della squadra.
Il 30 luglio 2010, dopo essersi svincolato dal Portsmouth, passa a parametro zero alBristol City firmando un contratto annuale con opzione per un secondo anno.[3] L'11 febbraio 2011, alla vigilia della sua presenza numero 850 con le squadre di club, rinnova il suo contratto fino alla fine della stagione 2011-2012.[4] Con questa maglia il 10 marzo 2012 a 41 anni disputa la partita numero 900 a livello di club.[5]
Il 1º maggio 2012, in scadenza del suo contratto viene svincolato dalBristol City. Il 23 luglio 2012 il portiere inglese chiede alla societàExeter City se può allenarsi con la squadra in attesa che un club possa offrirgli un nuovo contratto.Paul Tisdale, tecnico dell'Exeter City, accetta la proposta di James ritenendolo un bene sia per il giocatore stesso che per la squadra data la grande esperienza del portiere inglese. Tuttavia il tecnico ha limitato la possibilità di stipulare un contratto dato che la società ha già acquistato il portiereRhys Evans come vice diArtur Krysiak.
Il 27 settembre 2012 è arrivato aDean Court ad allenarsi con ilBournemouth con il quale, il giorno successivo, firma un contratto fino alla fine della stagione 2012-13 prendendo il numero 34.[6]
Il 12 marzo 2013 rescinde anticipatamente e consensualmente il suo contratto con la societàAFC Bournemouth perché per clausola stabilita da entrambe le parti era previsto che alla 20ª presenza del portiere inglese con la società sarebbe scattata l'opzione per un altro anno. Arrivati alla 19ª l'allenatoreEddie Howe non lo schiera più in campo facendogli perdere il posto da titolare a favore diShwan Jalal. James, vista la situazione, decise di mettersi alla ricerca di un nuovo club andando così inIslanda e allenandosi con la l'Íþróttabandalag Vestmannaeyja (ÍBV).
Il 2 aprile James firma ufficialmente un contratto con la societàÍBV che lo legherà fino alla fine dell'anno2013 sia come assistente del suo ex compagno di squadra delPortsmouth (Hermann Hreiðarsson, attuale allenatore) e sia come giocatore.[7][8]
James ha esordito innazionale maggiore nel 1997, a 27 anni, in un'amichevole contro ilMessico. Solo nel 2002, dopo un errore commesso dall'allora titolareDavid Seaman contro laMacedonia, ha conquistato la maglia di titolare: nel 2004 ha potuto così giocare i quattro match dell'Inghilterra agliEuropei in Portogallo. Nel settembre dello stesso anno, a causa di una papera contro l'Austria, ha perso la maglia di titolare, a favore diPaul Robinson.
Il 17 agosto 2005 un'altra disavventura, in un'amichevole contro laDanimarca: James, subentrato a Robinson, concesse quattro gol (risultato finale 4-1) ai danesi, rendendo quella la peggior sconfitta degli ultimi 25 anni per l'Inghilterra. Nel 2006 è stato convocato per iMondiali 2006, come vice di Robinson.
Aimondiali del 2010, conquista il posto da titolare dopo una papera diRobert Green contro gliStati Uniti (gara terminata 1-1). Giocando la partita contro l'Algeria del 18 giugno è diventato il più vecchio esordiente nella storia dei Campionati del Mondo, a 39 anni 10 mesi e 17 giorni, chiudendo così di fatto la sua carriera con la maglia della nazionale.[10]