Carriera Gli esordi Figlio di Mauro, campione italiano di mountain bike UISP, Diego Ulissi iniziò a gareggiare nel ciclismo all'età di sette anni con l'U.C. Donoratico. Tra le sue vittorie da allievo, due Coppe d'Oro e un titolo italiano a cronometro. Da Juniores corse con i colori della Cycling Team Vangi. Il 13 agosto 2006 conquistò il titolo iridato in linea di categoria sul circuito di Spa-Francorchamps in Belgio; si ripeté il 12 agosto 2007, ottenendo la seconda maglia iridata in quel di Aguascalientes, in Messico, davanti ai compagni di Nazionale Daniele Ratto ed Elia Favilli. Dal gennaio 2008 a fine 2009 gareggiò quindi tra gli Elite/Under-23 con la formazione toscana Seano/Hopplà, vincendo tra le altre la Coppa 29 Martiri di Figline di Prato nel 2009 e vestendo la maglia della nazionale nella prova in linea Under-23 dei campionati del mondo 2009 a Mendrisio.

2010-2013: i primi anni da professionista Esordì nella categoria Professionisti all'inizio del 2010, a soli vent'anni di età, con la divisa della Lampre-Farnese Vini, la squadra diretta da Giuseppe Saronni. Fece il suo debutto in febbraio al Gran Premio Costa degli Etruschi a Donoratico; ottenne invece in settembre il primo successo da pro, aggiudicandosi il Gran Premio Industria e Commercio di Prato.

Nel 2011 con la Lampre-ISD consegue la prima vittoria in carriera in un grande Giro, nella diciassettesima tappa del Giro d'Italia con arrivo a Tirano: il successo arrivò dopo una lunga fuga, in seguito al declassamento per scorrettezze del connazionale Giovanni Visconti, che lo aveva preceduto in volata. Nel mese successivo si aggiudica una tappa e la vittoria finale al Giro di Slovenia. In luglio partecipa al Brixia Tour dove ottiene il terzo posto in classifica generale, oltre al medesimo piazzamento nella tappa con traguardo a Passo Maniva.

Nel marzo 2012 vince la terza e la quarta tappa della Settimana Internazionale di Coppi e Bartali, facendo sue anche la classifica giovani e quella a punti. In agosto vince il Gran Premio Industria Commercio Artigianato Carnaghese.

Nel 2013 nell'ora Lampre-Merida, Ulissi si ripete alla Settimana Internazionale di Coppi e Bartali, aggiudicandosi l'arrivo in salita di Sogliano al Rubicone e la classifica generale. Nel mese di luglio si impone in uno sprint ristretto nell'arrivo in salita della prima tappa del Giro di Polonia a Madonna di Campiglio. Nel finale di stagione si rende protagonista di tre vittorie in dieci giorni, tutte nel mese di ottobre, primeggiando nella Milano-Torino, nella Coppa Sabatini e nel Giro dell'Emilia.

Dal 2014: le vittorie al Giro d'Italia

Nell'avvio della stagione 2014 si aggiudica una tappa al Tour Down Under, e il Gran Premio Città di Camaiore, in Toscana. Il 14 maggio vince la sua seconda tappa al Giro d'Italia, svoltasi fra Taranto e Viggiano, regolando il gruppo dei migliori giunto pressoché compatto al traguardo. Tre giorni più tardi si ripete vincendo sull'arrivo in salita di Montecopiolo. Il 25 giugno viene diffusa dall'UCI la notizia della sua positività al salbutamolo riscontrata al termine dell'undicesima tappa del Giro; il ciclista viene quindi provvisoriamente sospeso dalla squadra. La Camera disciplinare per i casi di doping dell'Associazione Olimpica Svizzera conferma la squalifica di nove mesi, riconoscendo come causa la sola negligenza e non la volontà di migliorare le prestazioni agonistiche: Ulissi può così tornare alle gare a partire dal 28 marzo 2015. Il 15 maggio torna alla vittoria al Giro d'Italia conquistando dopo 264 km la tappa più lunga dell'edizione, la Grosseto-Fiuggi. Il 27 giugno successivo conclude terzo ai campionati italiani, alle spalle del vincitore Vincenzo Nibali e di Francesco Reda. Prima del termine della stagione, il 19 settembre, fa suo il Memorial Marco Pantani.

Nel maggio 2016 vince la quarta e l'undicesima tappa del Giro d'Italia, concluso al ventunesimo posto. Nel prosieguo dell'annata si impone nella tappa a cronometro del Giro di Slovenia, al Circuito de Getxo e al Giro della Repubblica Ceca, imponendosi nella terza frazione e nella generale. A settembre, dopo essere stato convocato dal CT Davide Cassani per i campionati europei, successivamente conclusi in nona piazza, sfiora la vittoria in una classica World Tour, concludendo terzo al Grand Prix Cycliste de Montréal: nei metri finali si trova in testa, venendo tuttavia rimontato dal belga Greg Van Avermaet e dallo slovacco Peter Sagan, che lo precedono nell'ordine all'arrivo.

Nel 2017, con l'ora rinominato UAE Abu Dhabi (successivamente UAE Team Emirates), esordisce già a gennaio al Tour Down Under, che termina quinto nella generale, centrando la prima vittoria il 5 febbraio seguente al Gran Premio Costa degli Etruschi. Nel prosieguo di stagione si mette in mostra con alcuni piazzamenti nella top 10 al Giro dei Paesi Baschi e al Giro di Romandia, mentre nelle classiche delle Ardenne è ventisettesimo all'Amstel Gold Race, decimo alla Freccia Vallone e trentesimo alla Liegi-Bastogne-Liegi. A giugno prende parte al Giro del Delfinato, terminando al terzo posto la frazione inaugurale, ma concludendolo lontano dalle posizioni di vertice. Secondo dietro al connazionale Fabio Aru al campionato italiano in Piemonte, il 1º luglio successivo esordisce al Tour de France con l'obiettivo di fare sua una tappa: inseritosi nella fuga vincente della quindicesima frazione, si classifica secondo a 19" dall'olandese Bauke Mollema, solo sfiorando il successo sul traguardo di Le Puy-en-Velay. Il 10 settembre conquista il primo successo in una gara in linea World Tour, facendo suo il Grand Prix Cycliste de Montréal davanti allo spagnolo Jesús Herrada. Secondo al Memorial Marco Pantani, viene convocato da Cassani per i campionati del mondo di Bergen, dove conclude al trentottesimo posto la prova in linea. Corre poi le classiche di fine stagione del calendario italiano, finendo quarto alla Coppa Sabatini, settimo al Giro dell'Emilia, nuovamente quarto alla Tre Valli Varesine, e ventunesimo al Giro di Lombardia: grazie a tali piazzamenti si aggiudica la classifica finale individuale della Ciclismo Cup. Ad inizio ottobre, nell'ultimo appuntamento dell'annata, fa sua la quarta tappa, l'unica con arrivo in salita, del Giro di Turchia, andando ad imporsi, al termine della sei giorni di gara, anche nella classifica finale della corsa a tappe turca.

Nel 2018 torna al successo al Giro di Svizzera, imponendosi allo sprint sul gruppo dei migliori, composto da quindici unità, sull'arrivo in salita di Leukerbad.

Nel giugno 2019 centra la vittoria al Gran Premio Città di Lugano e la settimana seguente si ripete con la seconda tappa e classifica generale del Giro di Slovenia. In estate si aggiudica con la maglia della Nazionale il Tokyo 2020 Test Event, gara preolimpica in Giappone.

Nel 2020 vince il Giro del Lussemburgo, facendo sue la prima e la quarta frazione; successivamente prende parte al Giro d'Italia, conquistando la seconda tappa con arrivo ad Agrigento e la tredicesima con arrivo a Monselice. Terminata la stagione è costretto ad uno stop di alcuni mesi a causa di una miocardite: nel febbraio 2021, in seguito ad alcuni accertamenti cardiaci con esito favorevole, è tornato agli allenamenti e successivamente alle competizioni, il successivo 3 aprile al Gran Premio Miguel Indurain. Ritrova il successo il 12 giugno nella quinta tappa del Giro di Slovenia, mentre nel mese di luglio vince la prima e la quarta frazione della Settimana Ciclistica Italiana, conquistando anche la classifica finale della prima edizione della corsa.

Nel successivo biennio coglie tre successi: nel 2022 il Gran Premio Industria e Artigianato di Larciano e la terza tappa del Tour du Limousin, mentre nel 2023 la quarta frazione del Tour of Oman. Nel 2024 vince a marzo la seconda tappa alla Settimana Internazionale di Coppi e Bartali, che chiude al terzo posto, e nel mese di luglio la terza frazione e la classifica finale dell'Österreich-Rundfahrt.

Il 17 maggio 2025, nell'8ª tappa (da Giulianova a Castelraimondo) e alla 12ª partecipazione al Giro d'Italia, ha avuto la soddisfazione di poter indossare anche la maglia rosa, dopo otto vittorie di tappa e primo italiano dopo 4 anni. Ulissi ha avuto l'ulteriore piacere di indossarla nella tappa successiva, con arrivo a Siena, da toscano in Toscana.

Palmarès Strada

2006 (Juniores) 3ª tappa, 1ª semitappa 3Tre Bresciana (Brescia > Brescia) 3ª tappa, 2ª semitappa 3Tre Bresciana (Brescia > Lograto, cronometro) Classifica generale 3Tre Bresciana Trofeo San Rocco Campionati del mondo, Prova in linea Juniores Coppa Pietro Linari 3ª tappa Giro della Lunigiana (Fosdinovo > Fosdinovo)

2007 (Juniores) Trofeo Alfredo Fiaschi G.P. Colli Marignanesi Trofeo Città di Loano Trofeo Comune di Montelupone 3ª tappa, 1ª semitappa 3Tre Bresciana (Torbole Casaglia > San Vigilio) 3ª tappa, 2ª semitappa 3Tre Bresciana (Molinetto di Mazzano > Molinetto di Mazzano, cronometro) Classifica generale 3Tre Bresciana Campionati del mondo, Prova in linea Juniores Coppa Remo Puntoni Trofeo Commercio Industria Artigianato

2008 (Seano Vangi-Molino di Ferro Under-23) Trofeo Tempestini Ledo Coppa del Grano Gran Premio Chianti Castello Guicciardini di Poppiano Giro della Provincia di Biella

2009 (Hopplà-Seano-Bellissima Under-23) Gran Premio Comune di Cerreto Guidi Coppa 29 Martiri di Figline di Prato

2010 (Lampre-Farnese Vini, una vittoria) Gran Premio Industria e Commercio di Prato

2011 (Lampre-ISD, tre vittorie) 17ª tappa Giro d'Italia (Feltre > Tirano) 2ª tappa Giro di Slovenia (Tržič > Golte) Classifica generale Giro di Slovenia

2012 (Lampre-ISD, tre vittorie) 3ª tappa Settimana Internazionale di Coppi e Bartali (Fiorano Modenese > Levizzano Rangone) 4ª tappa Settimana Internazionale di Coppi e Bartali (Pavullo > Pavullo) Gran Premio Industria Commercio Artigianato Carnaghese

2013 (Lampre-Merida, sei vittorie) 2ª tappa Settimana Internazionale di Coppi e Bartali (Gatteo > Sogliano al Rubicone) Classifica generale Settimana Internazionale di Coppi e Bartali 1ª tappa Giro di Polonia (Rovereto > Madonna di Campiglio) Milano-Torino Coppa Sabatini Giro dell'Emilia

2014 (Lampre-Merida, quattro vittorie) 2ª tappa Tour Down Under (Prospect > Stirling) Gran Premio Città di Camaiore 5ª tappa Giro d'Italia (Taranto > Viggiano) 8ª tappa Giro d'Italia (Foligno > Montecopiolo)

2015 (Lampre-Merida, due vittorie) 7ª tappa Giro d'Italia (Grosseto > Fiuggi) Memorial Marco Pantani

2016 (Lampre-Merida, sei vittorie) 4ª tappa Giro d'Italia (Catanzaro > Praia a Mare) 11ª tappa Giro d'Italia (Modena > Asolo) 3ª tappa Giro di Slovenia (Celje > Celjska koča, cronometro) Circuito de Getxo 3ª tappa Giro della Repubblica Ceca (Mohelnice > Šternberk) Classifica generale Giro della Repubblica Ceca

2017 (UAE Abu Dhabi/UAE Team Emirates, quattro vittorie) Gran Premio Costa degli Etruschi Grand Prix Cycliste de Montréal 4ª tappa Giro di Turchia (Marmaris > Selçuk) Classifica generale Giro di Turchia

2018 (UAE Team Emirates, una vittoria) 5ª tappa Giro di Svizzera (Gstaad > Leukerbad)

2019 (UAE Team Emirates, quattro vittorie) Gran Premio Città di Lugano 3ª tappa Giro di Slovenia (Žalec > Idria) Classifica generale Giro di Slovenia Tokyo 2020 Test Event

2020 (UAE Team Emirates, cinque vittorie) 1ª tappa Giro del Lussemburgo (Lussemburgo > Lussemburgo) 4ª tappa Giro del Lussemburgo (Redange > Differdange) Classifica generale Giro del Lussemburgo 2ª tappa Giro d'Italia (Alcamo > Agrigento) 13ª tappa Giro d'Italia (Cervia > Monselice)

2021 (UAE Team Emirates, quattro vittorie) 4ª tappa Giro di Slovenia (Aidussina > Nova Gorica) 1ª tappa Settimana Ciclistica Italiana (Alghero > Sassari) 4ª tappa Settimana Ciclistica Italiana (Cagliari > Cagliari) Classifica generale Settimana Ciclistica Italiana

2022 (UAE Team Emirates, due vittorie) Gran Premio Industria e Artigianato 3ª tappa Tour du Limousin (Donzenac > Malemort)

2023 (UAE Team Emirates, una vittoria)