Muove i suoi primi passi nell'Amarante, squadra della sua città natale. Nel1996 viene ingaggiato dalPorto, che lo inserisce nelle sue giovanili. Nel1997 viene ceduto in prestito alLeça, con cui esordisce nel calcio professionistico. Successivamente viene ceduto in prestito alVitória Setúbal[1] e all'Alverca.[2]
Nella stagione successiva viene nominato come nuovo allenatore il portogheseJosé Mourinho. Terminato il prestito diCosta, quest'ultimo ritorna alPorto, affiancando il neoacquistoPedro Emanuel, poichéAndrade è stato ceduto alDeportivo La Coruña.[5] Carvalho inizialmente non trova spazio tra i titolari, ma la sua forma eccellente e le sue prestazioni lo portano tra i titolari,[6][7] così da giocare le partite più importanti come la semifinale della Coppa UEFA contro laLazio (vinta 4-1) e la finale contro ilCeltic, vinta ai tempi supplementari 3-2 alloEstadio Benito Villamarín, vincendo così il suo primotrofeo europeo. Viene inoltre nominatoCalciatore portoghese dell'anno.[8]
Nella stagione2003-2004 riesce a imporsi a livello internazionale. Infatti le sue performance solide hanno contribuito alla sua squadra di vincere laPrimeira Liga per il secondo anno consecutivo e soprattutto laChampions League in finale contro ilMonaco. Viene inoltre nominato difensore dell'anno dallaUEFA e viene inserito nella lista per i candidati alPallone d'oro.[9] A fine stagione viene rintracciato da molti club europei, tra cuiInter,Barcellona,Manchester United eReal Madrid,[10] quest'ultima ha offerto 8,3 mln di euro per il cartellino del giocatore, offerta rifiutata poiché il Porto non lo avrebbe ceduto per meno di 23,5 mln.[11]
Nel2004 viene acquistato per 30 milioni di euro dalChelsea (pagato con un importo iniziale di 20 mln),[12] fortemente voluto daMourinho, che era stato appena nominato allenatore della squadralondinese; ritrova inoltrePaulo Ferreira, suo ex compagno ai tempi delPorto.[13] Disputa una buona prima stagione, aiutando ilChelsea a rivincere laPremier League, dopo 50 anni, e lacoppa di lega. Ha segnato il suo primo gol con la nuova maglia nella vittoria per 3-1 contro ilNorwich City.
La stagione2005-2006 inizia in modo difficile, soprattutto a causa delle critiche rivolte aMourinho. Riesce però a riguadagnarsi il posto di titolare, disputando dal primo minuto le partite diChampions League controBetis Siviglia eAnderlecht. Proprio contro il Betis segna il suo primo gol stagionale e nella massima competizione europea, partita vinta 4-0.[14] Si rende uno dei cannonieri della squadra in Champions League segnando anche un gol aibelgi, partita terminata 2-0 a favore deiThe Blues.[15] Nel mese di gennaio contro ilCharlton Athletic riceve il suo primo cartellino rosso in maglia blu reale. La sua collaborazione con il capitanoJohn Terry nel reparto difensivo è uno dei principali motivi del secondo scudetto di fila dei londinesi.
La stagione 2006-2007 inizia molto bene. Lo dimostrano il successo per 3-0 contro ilManchester City[16] e i gol contro ilManchester United (terminata 1-1) e ilTottenham (con una cannonata da 30 metri dalla porta imparabile per il portiere degliSpursPaul Robinson.[17][18] Il 28 aprile2006, nella partita contro ilBolton Wanderers, subisce un infortunio che gli impedisce di giocare la finale diFA Cup (vinta per 1-0 dalChelsea), il ritorno della semifinale diChampions League (conclusosi con l'eliminazione deiBlues) e l'ultima partita diPremier League. Le sue prestazioni gli valgono la candidatura per il titolo di Difensore dell'anno e di Giocatore dell'anno dellaPremier League.[19]
Ricardo Carvalho nella partita diPremier League contro ilFulham il 28 dicembre 2009
Nella stagione2007-2008 riesce a riconfermarsi. Dopo la partenza diMourinho dalChelsea, sostituito dall'israelianoAvraham Grant, ilReal Madrid tenta di acquistarlo, ma Carvalho decide di rimanere aLondra. Il 26 dicembre 2007, nella partita pareggiata 4-4 contro l'Aston Villa, rimedia il suo secondo cartellino rosso della sua carriera al Chelsea, con un fallo da ultimo difensore all'attaccante deiThe VillansGabriel Agbonlahor.[20] In questa stagione è stato uno dei calciatori più coerenti al club e i suoi sforzi sono stati premiati realizzando un gol nella sua 150ª partita con la maglia delChelsea contro ilMiddlesbrough (con vittoria per 1-0)[21] e, il 26 aprile dello stesso anno. disputa la sua 100ª partita inPremier League. Le sue solide prestazioni hanno portato il club londinese alla prima finale diChampions League di sempre (persa contro ilManchester United 6-5 d.c.r.). Anche quest'anno viene elettoGiocatore dell'anno conMichael Ballack eJoe Cole.
La stagione2008-2009 è segnata dai continui problemi al ginocchio e dall'esonero dell'allenatore brasilianoLuiz Felipe Scolari, sostituito dalCT dellaRussiaGuus Hiddink, che lo lascia in panchina a favore del difensore brasilianoAlex.[22] In tutta la stagione gioca 18 partite con un gol.
Nel luglio 2009 il difensore portoghese voleva lasciare definitivamente il Chelsea ed approdare all'Inter del suo ex allenatore José Mourinho poiché ha giocato solo 18 partite stagionali per causa di un infortunio al ginocchio.[23] Ma gli italiani non hanno mostrato l'interesse iniziale per il difensore e quindi Carvalho ha cominciato ad allenarsi e a giocare le partite di pre-stagione con i londinesi.
L'arrivo diCarlo Ancelotti sulla panchina delChelsea e il superamento dei suoi problemi fisici gli consentono di riprendersi il posto di titolare. Nella partita diCommunity Shield contro ilManchester United segna un gol e viene nominato uomo-partita. Il 20 dicembre2009 ha disputato la sua 200ª con la maglia delChelsea, nella partita pareggiata 1-1 contro ilWest Ham. Un infortunio nel finale di stagione gli ha impedito di disputare la partita che ha sancito la vittoria dellaPremier League da parte delChelsea (la terza di Carvalho) e la finale diFA Cup (vinta per 1-0). Secondo il quotidiano britannicoThe Sun, Carvalho sarebbe pronto a lasciare il Chelsea, ma non per andare all'Inter, ma di firmare un contratto senza esitare aiLos Merengues.[24]
Il 10 agosto2010 viene acquistato per 8 milioni di euro dalReal Madrid, firmando un contratto biennale con opzione per il terzo anno.[25][26] RitrovaMourinho e diventa immediatamente titolare inamovibile. Il suo debutto con iGalacticos avviene il 29 agosto2010 contro ilMaiorca; la partita termina in parità (0-0). Nella gara successiva realizza il suo primo gol andando a segno contro l'Osasuna; grazie al suo goal il Real Madrid porta a casa la vittoria. Nella partita diChampions League contro ilMilan del 19 ottobre 2010, il difensore portoghese viene nominato uomo partita dal giornale spagnoloMarca.[27] Il 7 novembre2010, nel derby contro l'Atlético Madrid, realizza al tredicesimo minuto il primo dei due gol che consentono al Real Madrid di guadagnare i tre punti.[28] Il 19 dicembre 2010 viene espulso dopo un fallo all'attaccantesivilianoÁlvaro Negredo.[29] Le sue ottime prestazioni hanno contribuito aimerengues di vincere laCoppa del Re, aggiungendo così un altro trofeo al suo ricco palmarès.
Nella stagione successiva parte titolare, ma, a causa della scarsa condizione di forma, perde il posto a favore della coppiaPepe-Sergio Ramos. Un altro motivo è l'addio di Mourinho a favore di Ancelotti, già allenatore del difensore portoghese nell'ultima stagione con il Chelsea. Tuttavia ha scelto di restare fino a fine stagione 2012-2013 con i madrileni.[30]
Il 28 maggio2013 firma un contratto annuale con opzione per il secondo anno con ilMonaco.[31] La stagione2013-2014 inizia bene: il difensore portoghese trova subito spazio fra i titolari assieme aÉric Abidal. Debutta con iRouge et Blanc il 10 agosto2013, nella partita vinta 2-0 contro ilBordeaux alloStadio Jacques Chaban-Delmas.[32] Il 1 settembre 2013, in occasione delderby contro ilMarsiglia (vinto 2-1), viene ammonito per la prima volta nella sua nuova esperienza.[33] La sua buona prestazione contribuisce al secondo posto incampionato e al ritorno in Champions League dopo quasi un decennio. A fine anno il suo contratto viene rinnovato per un ulteriore anno.[34]
La stagione 2014-2015 inizia con l'esonero del tecnico italianoClaudio Ranieri e con l'arrivo del portogheseLeonardo Jardim. Con il nuovo tecnico trova subito un posto tra i titolari affiancato dal difensore italianoAndrea Raggi. L'addio di giocatori comeJames Rodríguez eRadamel Falcao aveva influenzato psicologicamente i calciatori, portando un brutto inizio stagionale. Infatti già nella prima giornata dicampionato persa 2-1 contro ilLorient, il difensore portoghese viene espulso per doppia ammonizione.[35] Dopo la ripresa della squadra, il 30 novembre2014 si infortuna al polpaccio, che lo costringe in panchina per un mese. Rientrato in campo il 14 gennaio2015 risente dei problemi muscolari e dovrà stare dodici giorni fermo. Il 9 febbraio di nuovo si infortunio e si ferma per un mese. Il 29 marzo durante la partita della nazionale si infortuna saltando così i quarti diChampions League contro laJuventus.[36] Il 2 luglio rinnova il contratto per un altro anno.[37] L'anno successivo totalizza 33 presenze e 2 gol contribuendo al terzo posto incampionato con accesso diretto inChampions League. Il 9 agosto2016 rescinde con il club monegasco.[38][39]
Viene convocato dallanazionale maggiore l'11 ottobre 2003, nella partita vinta 5-3 contro l'Albania.[43] Il giovane difensore diventa subito uno dei pilastri della nazionale, giocando tutte le partite dell'Euro 2004, fino alla finale contro laGrecia, persa 1-0.[44] A fine torneo viene nominato miglior difensore di questa competizione insieme aSol Campbell.[45]
In occasione delMondiale 2006, Carvalho gioca tutte le partite tranne la finale per il quarto posto contro laGermania.[46] In questa competizione nazionale, dove il Portogallo termina quarto, il giovane difensore viene espulso per un fallo ad aria di rigore in semifinale all'attaccante franceseThierry Henry. Il calcio di rigore viene realizzato dal centrocampistaZinédine Zidane, che porta laFrancia in finale.[47] A fine torneo viene nominato tra i 23 calciatori più forti del torneo.
Viene convocato anche per partecipare all'Europeo 2008, giocando 3 partite sulle 4 della nazionale, e alMondiale 2010, in coppia conBruno Alves. La nazionale non prende nemmeno un gol nella fase a girone e nel torneo uno solo, agli ottavi di finale contro laSpagna (con sconfitta per 1-0).
Il 13 settembre2011 viene sospeso per un anno dalla nazionale per aver lasciato senza motivo il ritiro della squadra.[48]
Il 3 ottobre2014, dopo tre anni, viene convocato dal nuovoCT della nazionaleFernando Santos per la partita amichevole contro la Francia e per le gare di qualificazione dell'Euro 2016 contro laDanimarca e l'Armenia. Il 29 marzo2015 realizza il gol del momentaneo 1-0 nella vittoria delPortogallo contro laSerbia (2-1), tornando così a segnare in nazionale ad otto anni di distanza dall'ultima volta.
Viene convocato per gliEuropei 2016 inFrancia.[49] Comincia titolare nelle prime tre partite del girone, ma poi perde il posto in favore diJosé Fonte. Il 10 luglio si laurea campione d'Europa dopo la vittoria in finale sulla Francia padrona di casa per 1-0, ottenuta grazie al goal decisivo diÉder durante i tempi supplementari.[50] Con questa vittoria diviene anche il più anziano giocatore a vincere un Europeo.[51]