Inizialmente si dedica al calcio (riesce anche a fare dei provini con le giovanili del Milan) ma poi abbandona questo sport per dedicarsi al ciclismo. Dopo i buoni trascorsi da dilettante riesce a passare professionista nel 2005 nella Liquigas-Bianchi. Il debutto è subito molto convincente e nel mese di maggio consegue la prima vittoria da professionista alla Volta Ciclista a Catalunya. In giugno sorprende tutti aggiudicandosi il titolo italiano in linea davanti a Filippo Pozzato e Massimo Giunti. Oltre alle due vittorie coglie anche importanti piazzamenti, tra i quali il terzo posto all'Uniqa Classic, il quinto alla Coppa Bernocchi, il sesto nel Gran Premio di Misano Adriatico e il decimo nella Parigi-Tours (prova del circuito ProTour).
Nel 2006 è ripetutamente vittima di problemi fisici (i più importanti la mononucleosi contratta in inverno ed una polmonite che lo colpisce in primavera). Pur non correndo con continuità ottiene tuttavia qualche buon piazzamento: il sesto posto nello Scheldeprijs, l'ottavo al Giro di Polonia e il decimo all'Eneco Tour. Il 30 settembre riesce a cogliere la prima vittoria stagionale al Memorial Cimurri; si classifica poi terzo alla Coppa Sabatini. Il suo 2007 si apre quindi al Challenge de Mallorca, durante il quale si classifica quinto in volata al Trofeo de Mallorca e nono al Trofeo Alcudia. Successivamente si piazza secondo nella sesta tappa della Tirreno-Adriatico, con arrivo in salita e dopo una lunga fuga, ed è quarto alla Freccia del Brabante. Veste anche la maglia rosa nella prima tappa del Giro d'Italia dopo essere passato per primo al traguardo della cronosquadre vinta dalla Liquigas.
2008-2009: Barloworld e Lampre
Nel 2008 si trasferisce alla formazione britannica Barloworld, con la quale ottiene un secondo posto assoluto alla Tirreno-Adriatico, una vittoria di tappa alla Tre Giorni di La Panne e la classifica finale dello Ster Elektrotoer, corsa olandese di cui si aggiudica anche la terza tappa. Il 7 settembre vince inoltre il Giro di Romagna. Il 29 luglio 2008 la Lampre dichiara di averlo ingaggiato per la stagione successiva. Nell'annata 2009 Gasparotto conquista però solo due secondi posti, al Giro della Provincia di Grosseto e in una tappa del Giro di Sardegna, oltre a prendere parte al Giro d'Italia.
2010-2014: Astana
Nel 2010 si trasferisce all'Astana; ad inizio stagione, il 14 marzo, vince la quinta tappa della Tirreno-Adriatico. Nel mese di aprile ottiene un terzo posto sul Cauberg nella prima delle classiche delle Ardenne, l'Amstel Gold Race. Dopo il Giro d'Italia, durante un allenamento a luglio, si frattura una clavicola. Riesce comunque a riprendere la preparazione atletica, partecipa alla Vuelta a España e, in seguito, viene inserito dal c.t. Bettini come riserva della squadra che rappresenta l'Italia durante i mondiali a Melbourne: questo per sostituire Pinotti, che, convocato in precedenza, aveva dovuto rinunciare a causa di un'infezione alle vie respiratorie.[1] Il 2011 rappresenta un anno di transizione, nel quale ottiene diversi piazzamenti, tra cui il quarto posto alla Tre Valli Varesine e il secondo posto nella penultima tappa della Vuelta a España; offre inoltre buoni segnali nelle classiche delle Ardenne, in particolare durante la Freccia Vallone[2] e la Liegi-Bastogne-Liegi,[3] lavorando per i capitani Aleksandr Vinokurov e Roman Kreuziger.
Il 15 aprile 2012 vince in volata l'Amstel Gold Race sul Cauberg, rompendo il digiuno di vittorie di ciclisti italiani nelle classiche, che durava dal 2008. A conferma del suo ottimo periodo di forma, si classifica undicesimo sul muro di Huy alla seguente Freccia Vallone e ottiene il terzo posto alla Liegi-Bastogne-Liegi, vincendo la volata degli inseguitori. Chiude la settimana come miglior corridore delle Classiche delle Ardenne sia per somma dei piazzamenti (1º, 11º, 3º) che per punti World Tour (150).[4] Nel prosieguo di stagione non ottiene particolari risultati, correndo comunque il Giro d'Italia.[5]
Al termine della stagione 2014 entra nell'organico della Wanty-Groupe Gobert, formazione Professional belga. Al primo anno non va oltre l'ottavo posto all'Amstel Gold Race e due podi di tappa al Giro del Lussemburgo.[8] La prima vittoria con la nuova maglia arriva il 17 aprile 2016, quando vince la 51ª edizione dell'Amstel Gold Race, dopo un attacco decisivo sul Cauberg, bissando così il successo ottenuto nel 2012. Dedica la vittoria al compagno di squadra Antoine Demoitié, deceduto qualche settimana prima durante la Gand-Wevelgem. Il 12 giugno seguente viene fermato per otto giorni dalla squadra prima dell'ultima tappa del Critérium du Dauphiné, insieme al compagno Björn Thurau, per un valore troppo basso di cortisolo.[9] Rientrato alle gare, in settembre è selezionato in Nazionale per la prova in linea degli Europei a Plumelec.
Nel 2019 passa al team sudafricano Dimension Data, con cui in primavera è settimo alla Freccia del Brabante e decimo alla Freccia Vallone; è poi nuovamente al via del Giro d'Italia.[12] A fine stagione, acquisita la cittadinanza svizzera, assume licenza di ciclista "rossocrociato".[13] Nel 2020 veste sempre la maglia della squadra (divenuta NTT): in una stagione segnata dalla pandemia di COVID-19, partecipa ai mondiali di Imola con la Nazionale svizzera, e alla Vuelta a España, che porta a termine prima di dare l'addio all'agonismo.[14]