Caratteristiche tecniche Ha giocato nella sua carriera prevalentemente come terzino destro o difensore centrale. Era considerato un importante elemento per la costruzione del gioco e capace di buone diagonali offensive. Verso il termine della sua carriera era diventato un punto di riferimento per i giocatori più giovani. Carriera Friburgo Si forma calcisticamente nelle giovanili del Friburgo SC, per il quale esordisce in prima squadra il 9 settembre 2006 nella partita contro il Delbrücker SC valevole per il primo turno della DFB-Pokal 2006-2007. Il 17 settembre fa il suo esordio in 2. Fussball-Bundesliga contro il Monaco 1860. Termina la sua prima stagione tra i professionisti con ventinove presenze tra campionato e coppa nazionale.
La stagione 2007-2008 lo vede impiegato principalmente come terzino destro. Il 3 settembre 2007 provoca l'autorete di Zsolt Low per il momentaneo 2:0 contro il TSG Hoffenheim. Quattro giornate più tardi costringe il terzino dell'Erzgebirge Aue Hendrik Liebers a commettere fallo per poi venire espulso per doppia ammonizione. Le buone prestazioni attivano l'interesse del Bayer Leverkusen, il quale non riesce però a concludere l'operazione per la sessione di mercato dell'estate 2008 permettendo a Schwaab di rimanere in Brisgovia per un altro anno.
Il 14 settembre 2009 segna la sua prima rete per il club realizzando il rigore del momentaneo 1:2 nella vittoria esterna contro l'Augusta FC. Il 21 settembre realizza due assist nella vittoria per 5:0 contro il Wehen Wiesbaden. Ritorna al gol il 16 novembre realizzando il rigore decisivo contro il FSV Frankfurt. Il 6 febbraio 2009 segna il suo primo gol su azione contro il VfL Osnabrück. Su rigore segna la rete del definitivo 4 a 1 contro il FSV Frankfurt il 3 maggio. Sempre dagli undici metri realizza l'ultima rete con la maglia del Friburgo nella vittoria all'ultima giornata contro il 1.FC Kaiserslautern. Con cinque reti segnate e trentatré presenze in campionato celebra il 10 maggio a Coblenza l'aritmetica vittoria della 2. Fußball-Bundesliga 2008-2009. In DFB-Pokal 2008-2009 disputa le partite del primo e secondo turno contro l'SpVgg Unterhaching e l'Hoffenheim, segnando il rigore dell'1:1 contro i secondi.
Bayer Leverkusen Come già annunciato dallo stesso giocatore in un'intervista televisiva nell'ottobre 2008, nell'estate 2009 si trasferisce al Bayer Leverkusen. Nonostante il contratto con il Friburgo fosse terminato, il club del Baden-Württemberg ricevette un compenso per la sua cessione.
Esordisce con le 'Aspirine' il 31 luglio 2009 venendo schierato titolare nella partita contro il Babelsberg 03, valevole per il primo turno della DFB-Pokal 2009-2010. In Bundesliga fa il suo esordio l'8 agosto nel pareggio contro il Magonza 05, riuscendo successivamente ad entrare nell'undici titolare sfruttando l'infortunio del terzino sinistro Michal Kadlec. Nella vittoria contro l'Amburgo SV propizia il gol del 2:1, mettedo a referto il suo primo assist per la squadra. Il 3 aprile 2010 riceve la prima espulsione diretta per un brutto fallo ai danni del centrocampista dell'Eintracht Francoforte Ümit Korkmaz, venendo squalificato per le successive tre giornate. Conclude la stagione con ventinove presenze tra campionato e coppa nazionale.
La stagione 2010-2011 lo vede prendere parte alla sua prima competizione europea, l'UEFA Europa League 2010-2011, giocando sia l'andata che il ritorno del turno preliminare contro la formazione ucraina del Simferopoli. Nel girone B della fase a gruppi disputa tre delle sei partite realizzando l'assist del 4:0 della vittoria interna contro i norvegesi del Rosenborg. In campionato esordisce nei minuti finali della vittoria esterna contro il Borussia Dortmund, mantenendo la titolarità come terzino destro sino alla seconda metà del girone di ritorno, quando l'allenatore Jupp Heynckes lo sposta al centro della difesa in coppia con Stefan Reinartz.
Con l'abbandono di Heynckes in direzione Bayern Monaco il Leverkusen opta per Robin Dutt come nuovo allenatore per la stagione 2011-2012, il tecnico aveva già allenato Schwaab nella sua precedente esperienza al Friburgo. Tramite il secondo posto in campionato raggiunto nella stagione precedente poté esordire nella massima competizione europea nella vittoria in casa contro il Valencia CF. L'esperienza europea dura fino agli ottavi di finale, dove la squadra viene eliminata con un passivo di 10:2 dal Barcellona. In Bundesliga parte titolare in ventitré delle ventisette partite disputate, saltando le ultime sette giornate a causa di una frattura alla testa della tibia rimediata in allenamento.
La quarta stagione a Leverkusen lo vede ancora titolare destro di difesa nelle partite contro l'Eintracht in campionato e il Carl Zeiss Jena in Coppa di Germania. Negli incontri successivi si vede retrocesso in panchina a favore del neoacquisto Daniel Carvajal. Il suo utilizzo, ristretto agli incontri di coppa, viene ulteriormente limitato dall'infortunio rimediato al legamento della caviglia nella sfida di DFB-Pokal contro l'Arminia Bielefeld. Ritorna in campo il 9 febbraio 2013 nel pareggio contro il Monchengladbach. Lo scarso utilizzo nel corso della stagione e la scadenza del contratto a giugno 2013 lo porta a valutare diverse opzioni di trasferimento e l'8 maggio sottoscrive un contratto triennale con lo , valido dal 1º luglio 2013. Il 18 maggio disputa la centodiciannovesima e ultima partita con la maglia del Leverkusen subentrando nei minuti conclusivi della vittoria esterna contro l'Amburgo.
Stoccarda Con la maglia dello Stoccarda esordisce nel terzo turno preliminare della UEFA Europa League 2013-2014 contro il Botev Plovdiv il primo di agosto 2013. Scende in campo anche nella doppia sfida contro l'HNK Rijeka valevole per l'ingresso alla fase a gironi del torneo, ma perso dalla squadra tedesca per un risultato complessivo di 4:3 a favore dei croati. In campionato è costretto a giocare al centro della difesa per sopperire all'infortunio dei difensori centrali Serdar Tasci e Georg Niedermeier, formando con Antonio Rüdiger la nuova linea difensiva. Il 17 agosto causa l'autorete che condanna la squadra alla sconfitta contro il Leverkusen. Nella sfida interna contro il Werder Brema propizia il gol del momentaneo 1:0 segnato da Martin Harnik. Conclude la sua prima stagione con la nuova maglia disputando 38 partite tra campionato e coppe.
Inizia la stagione 2014-2015 scendendo in campo in Coppa di Germania nella sconfitta contro il Bochum del 16 agosto 2014. Il 27 settembre segna la sua prima e unica rete contro l'Hannover 96, partita poi vinta per 1-0. Viene espulso per somma di ammonizioni nella partita persa contro l'Augusta il 23 novembre. Termina la stagione con trentadue presenze e il quattordicesimo posto in campionato ottenuto tramite la vittoria nello scontro diretto all'ultima giornata contro il Paderborn 07.
Con l'arrivo di Alexander Zorniger come nuovo tecnico dello Stoccarda, Schwaab si ritrova escluso dell'undici titolare esordendo in campionato nel secondo tempo della partita contro l'Amburgo. Dalla decima giornata di campionato, contro il Leverkusen, riprende a ricoprire il ruolo di terzino destro o difensore centrale nella squadra titolare. Il cambio di allenatore, avvenuto dopo la sconfitta interna per quattro a zero contro l'Augusta, non gli limita la titolarità. Al termine del campionato disputa ventinove partite, ma non riesce ad evitare il diciassettesimo posto finale e la retrocessione in 2. Bundesliga della squadra.
PSV Eindhoven Scaduto il contratto con lo Stoccarda al termine della stagione 2015-16, si accorda con il PSV Eindhoven con i quali firma un contratto triennale. Esordisce con la squadra olandese in Supercoppa contro il Feyenoord giocando al centro della difesa e portando a casa il primo titolo in terra Oranje. Esordisce in Eredivisie il 6 agosto subentrando nel secondo tempo nella vittoria esterna contro il FC Utrecht. Rimane per tutta la stagione utile al turn-over della linea difensiva titolare composta da Nicolas Isimat-Mirin,Hector Moreno e Jetro Willems, disputando ventitré partite di cui tredici partendo dagli undici titolari. Scende in campo in tutte le partite del Girone D della UEFA Champions League 2016-2017.
La stagione 2017-2018 lo vede, dopo tre partite passate in panchina, prendersi il posto da titolare al centro della difesa della squadra olandese, disputando trentuno delle trentaquattro partite della Eredivisie 2017-2018. Il 15 ottobre 2017 sigla la prima rete in maglia PSV nella vittoria esterna per cinque a due contro il VVV-Venlo; il 23 dicembre segna il gol del momentaneo 1-1 contro il Vitesse Arnhem. Il 15 aprile 2018 si laurea campione dei Paesi Bassi grazie al successo per 3-0 contro l'Ajax. In KNVB Beker scende in campo in tutte le partite disputate dalla squadra, fermandosi ai quarti di finale contro il Feyenoord. In Europa, il percorso termina nei turni preliminari della UEFA Europa League 2017-2018, in cui il PSV esce contro i croati dell'NK Osijek.
La terza stagione nei Paesi Bassi lo vede disputare la Supercoppa dei Paesi Bassi 2018 persa ai calci di rigore contro il Feyenoord, nonostante la sua realizzazione dagli undici metri. In campionato disputa trentuno delle trentaquattro partite dell'Eredivisie 2018-2019, segnando l'ultima rete con la maglia del PSV il 15 dicembre 2018 contro l'Heracles Almelo. Partecipa alla UEFA Champions League 2018-2019 giocando entrambe le partite di qualificazione contro il BATE Borisov e cinque delle sei partite del girone B contro Barcellona, Tottenham e Inter. Nonostante una proposta di rinnovo proveniente dal club di Eindhoven, decide di concludere la sua esperienza olandese nel giugno 2019 come previsto dal suo precedente contratto.
Nell'agosto 2019 firma un nuovo contratto della durata di un anno con la squadra olandese. La quarta e ultima stagione al PSV lo vede esordire nei minuti finali del ritorno dell'ultimo turno preliminare della UEFA Europa League 2019-2020 contro l'Apollon Limassol il 29 agosto 2019. In campionato deve attendere il 25 settembre per disputate la prima partita contro il FC Groningen, vinta per tre a uno. Segna il suo primo gol stagionale in Europa League contro il LASK Linz il 7 novembre, ripetendosi nel pareggio contro l'Emmen il 1° dicembre. Disputa la sua ultima con la squadra olandese l'8 marzo 2020 contro il Groningen, in quanto, a causa dello scoppio della pandemia di COVID-19, la federazione calcistica olandese ha optato per la conclusione di tutti i tornei ancora in corso, tra cui l'Eredivisie 2019-2020. Per aiutare la squadra decide di rescindere il contratto due mesi prima dalla sua regolare scadenza dopo centotrenta partite e cinque reti con la maglia del PSV.
Nell'ottobre 2020 decide di terminare la propria carriera sul rettangolo di gioco.
Nazionale Viene convocato per la prima volta dalla Nazionale tedesca Under-18 il 5 settembre 2006 in un amichevole contro i pari quota austriaci. Segna la sua prima rete in un incontro di qualificazione agli Europei U-19 disputato contro l'Estonia il 5 ottobre. Nel luglio 2007 partecipa agli Europei di categoria giocando le prime partite del girone contro Russia e Francia e la semifinale persa contro la Grecia.
Il 21 agosto 2007 disputa la prima partita per la Nazionale tedesca Under-21 contro l'Irlanda Under-21. Viene convocato per le Qualificazioni al campionato europeo maschile under 21 di calcio 2009, scendendo in campo contro l'Irlanda del Nord nel girone e la Francia nei play-off di qualificazione. Viene selezionato per disputare il Campionato europeo maschile under 21 di calcio 2009 in Svezia, dove disputa la finale contro l'Inghilterra subentrando nel secondo tempo e vincendo il torneo.
Statistiche Presenze e reti nei club Statistiche aggiornate al 19 aprile 2026.