È un terzino sinistro che, all'occorrenza, può essere schierato anche come esterno di centrocampo. Mancino puro, è abile nei cross dalla fascia sinistra del campo.
Biraghi ha iniziato la sua carriera sportiva nelle giovanili del Carugate, per poi passare all'Atalanta all'età di otto anni.[3] Dopo quattro stagioni nel vivaio bergamasco si è trasferito all'Inter, con cui ha disputato i campionati Esordienti, Giovanissimi Regionali e Nazionali. Nella stagione 2007-2008 è stato ceduto in prestito alla Pro Sesto, per poi fare ritorno a Milano.[4] Nel 2010 viene aggregato al ritiro della prima squadra interista guidata da Rafael Benítez.[5] Il 24 novembre 2010, a 18 anni, esordisce da professionista sostituendo Pandev nei minuti finali della partita di Champions League vinta 1-0 contro il Twente a San Siro.
Juve Stabia, Cittadella e Catania
L'8 luglio 2011 l'Inter comunica il suo passaggio temporaneo alla Juve Stabia.[6] Fa il suo esordio in campionato il 27 agosto, nella sconfitta per 2-1 contro l'Empoli, subentrando al 63' ad Antonio Zito.
Conclusasi l'esperienza alla Juve Stabia con 11 presenze di campionato, nel maggio 2012 torna ad allenarsi con l'Inter in vista della tournée indonesiana di fine mese.[7]
Il 23 giugno 2012 passa in prestito al Cittadella.[8] Debutta il 12 agosto contro la Carrarese (2-0) nella sfida valida per il Secondo turno di Coppa Italia. Esordisce in campionato il 25 agosto nella partita giocata contro il Bari, terminata (2-1) per i pugliesi. Gioca in totale 36 partite in stagione, e a fine stagione il Cittadella riscatta la metà del suo cartellino.
Il 2 settembre 2013 si trasferisce al Catania a titolo di compartecipazione: la squadra etnea ne acquisisce la metà del cartellino appartenente al Cittadella mentre l'altra metà rimane di proprietà dell'Inter. Con 23 presenze non riesce a evitare la retrocessione della squadra.
Chievo e Granada
Il 6 luglio 2014 si trasferisce al Chievo con la formula del prestito biennale debuttando il 30 agosto, nella prima giornata di campionato contro la Juventus: a decidere la gara è un suo autogol al 6'. Disputa 18 partite di campionato, finendo poi ai margini della squadra.
Il 26 agosto 2015 passa al Granada,[9] squadra militante nella Primera División spagnola, con la formula del prestito annuale.[10] Debutta da titolare quattro giorni dopo nella vittoria esterna per 1-2 contro il Getafe. Colleziona in tutto 33 presenze.
Pescara
L'11 luglio 2016 viene ceduto a titolo definitivo al Pescara, neopromosso in Serie A, insieme all'interista Rey Manaj nell'ambito della trattativa che porterà Gianluca Caprari all'Inter nel 2017.[11] Il 13 agosto seguente fa il suo debutto con la maglia degli abruzzesi nella partita di Coppa Italia Pescara-Frosinone (2-0). Il 20 agosto debutta anche in campionato nel pareggio interno contro il Napoli. Il 22 dicembre 2016 sigla il suo primo gol in campionato, anche primo in Serie A, su rigore al 93º contro il Palermo, permettendo alla squadra di raggiungere l'1-1.[12]
Fiorentina
Il 15 agosto 2017 passa in prestito oneroso alla Fiorentina[13] per 500.000 euro con obbligo di riscatto fissato a 2 milioni.[14] Il 25 febbraio 2018 mette a segno la sua prima rete in maglia viola, firmando il gol decisivo al 6' della vittoria per 1-0 contro il Chievo, sua ex squadra.[15] Successivamente alla morte di Davide Astori, decide di ricordare lo scomparso capitano viola con un tatuaggio[16] mentre conclude in crescendo la prima stagione a Firenze[17] totalizzando 35 presenze tra campionato e Coppa Italia con una rete e 4 assist.
Rimasto a Firenze nonostante le offerte nella sessione estiva di calciomercato,[18] diventa titolare fisso sulla fascia sinistra, conquistando la fiducia del tecnico Stefano Pioli[18] ed esordendo in Azzurro.[18] A inizio stagione sigla un'altra rete (su punizione) nel 2-0 contro l'Atalanta del 30 settembre 2018,[19] migliorando lo score dell'anno precedente chiudendo la seconda annata in viola con 40 partite in totale, un gol e 6 assist.
Prestito all'Inter
Il 29 agosto 2019 passa in prestito con diritto di riscatto all'Inter, facendo così ritorno nel club che lo ha formato[20][21] e di cui è sempre stato tifoso.[22] Esordisce in Serie A coi nerazzurri il 25 settembre 2019 nella partita interna contro la Lazio, fornendo l'assist a Danilo D'Ambrosio per l'1-0 decisivo.[23][24] A causa dell'infortunio di Kwadwo Asamoah, da ottobre inizia a trovare spazio stabilmente sulla fascia sinistra facendo spesso la staffetta con Ashley Young. Il 27 febbraio 2020 realizza la sua prima rete con l'Inter nella gara di ritorno dei sedicesimi di finale di Europa League contro il Ludogorec,[25] vinta per 2-1, mentre il primo gol in campionato arriva il 24 giugno contro il Sassuolo.[26][27] Termina il campionato con 26 presenze e 2 gol ed è il secondo difensore ad aver realizzato più assist nella competizione (6) dopo Robin Gosens; complessivamente ha collezionato 37 presenze, 3 gol e 7 assist.[28]
Ritorno a Firenze
Terminato il prestito con i meneghini, Biraghi torna alla Fiorentina.[29] Il 18 ottobre 2020 realizza il suo unico gol stagionale che vale il momentaneo 2-0 della formazione gigliata in casa dello Spezia, nella partita poi conclusa sul 2-2.[30] Pochi giorni firma il prolungamento con la società fino al 2024.[31] Nonostante il complicato campionato dei viola, si conferma tra i giocatori imprenscindibili della squadra sia con la guida tecnica di Giuseppe Iachini che con quella di Cesare Prandelli.[32] Chiude il ritorno a Firenze con 38 presenze totali tra campionato e Coppa Italia, con una rete e 7 assist.
All'inizio della stagione 2021-2022, il nuovo allenatore Vincenzo Italiano lo nomina capitano della squadra,[33] in seguito alla cessione di Germán Pezzella.[34] Il 24 ottobre 2021 realizza il suo primo rigore con i viola in occasione del successo per 3-0 contro il Cagliari.[35] Segna ancora, su punizione, nella vittoriosa trasferta di Bologna,[36] il seguente 5 dicembre 2021. Il 17 gennaio 2022, contro il Genoa, registra la sua prima doppietta, realizzando entrambi i gol su punizione,[37] specifica che non si verificava da oltre 4 anni in Serie A.[38] Dopo essere stato tra i protagonisti, con tanto di rete,[39] della vittoria a Napoli che ha portato la squadra in semifinale di Coppa Italia,[40] nel corso della primavera manifesta l'intenzione di voler rimanere a Firenze,[41] mentre a fine stagione festeggia la prima qualificazione europea da quando indossa la maglia viola[42] totalizzando 42 presenze con 5 gol e 2 assist tra Serie A e coppa nazionale.
La quinta stagione fiorentina lo vede ancora capitano e al centro del progetto tattico di Italiano.[43] Dopo aver esordito con i gigliati in campo internazionale, il 13 ottobre 2022 realizza la sua prima rete in UEFA Conference League nel successo per 5-1 sugli Heart of Midlothian.[44] Il 27 febbraio 2023 realizza la prima marcatura in campionato nella stagione, segnando
un goal dalla propria metà campo[45] (esattamente da 57,91 metri)[46] contro l'Hellas Verona e portando il risultato sul definitivo 3-0 in favore della squadra viola.[47] Nel mese di marzo il sito ufficiale dell'ACF Fiorentina pubblica una lettera a sé stesso del giocatore[48] che ne approfitta per ripercorrere la propria vita da calciatore e l'esperienza a Firenze.[49] In primavera dimostra di essere in buona forma risultando spesso decisivo come assist-man in più di un'occasione:[50] in campionato mette a segno la sua seconda e ultima rete stagionale nel pareggio di Salerno.[51] Decisivo con un assist nella semifinale di ritorno di Conference League,[52] nella successiva finale contro il West Ham verrà colpito dal lancio di oggetti[53] da parte della tifoseria inglese:[54] seppur sanguinante[55] giocherà per intero la partita[56] e, nonostante la sconfitta, gli viene riconosciuto il riconoscimento di miglior giocatore nel suo ruolo e viene inserito dalla UEFA nella squadra della stagione della UEFA Europa Conference League.[57] Chiude la stagione con 3 reti e 13 assist con 52 presenze in tutte le competizioni ufficiali.
Confermato capitano anche nella sesta stagione con la maglia viola,[58] alla prima giornata di campionato mette a segno il gol che apre le marcature nel vittorioso esordio della Fiorentina a Genova.[59] Torna al gol il 18 aprile, nei supplementari della partita di ritorno contro il Viktoria Plzen, valevole per i quarti di finale di Conference League, assicurando il punteggio sul 2-0. In campionato segna su punizione contro il Napoli,[60] risultando decisivo per il 2-2 finale. Gioca da titolare, con la fascia da capitano, la finale persa contro l'Olympiacos,[61] rientrando per il secondo anno consecutivo tra i giocatori prescelti della squadra della stagione della UEFA Europa Conference League:[62] diventa il primo giocatore della competizione a essere selezionato due volte dagli osservatori tecnici UEFA. Conclude l'annata in viola con 46 presenze, 3 gol e 8 assist in tutte le competizioni.
L'arrivo di Raffaele Palladino come nuovo allenatore caratterizza la sua settima stagione in viola: rimasto capitano della squadra, cambia il suo ruolo nello schieramento in campo a causa del nuovo modulo.[63][64] Come nella stagione precedente segna già alla prima giornata, realizzando la punizione che regala il pareggio in casa del Parma.[65] Nel ritorno della gara di play-off di Conference League segna il rigore decisivo[66][67] nei tiri dal dischetto resisi necessari nel doppio confrontro contro la Puskás Akadémia.[68]
Nel febbraio 2013 torna a vestire la maglia dell'Under-21 e in giugno partecipa all'Europeo Under-21 in Israele, in cui l'Italia giunge seconda, sconfitta in finale 4-2 dalla Spagna.[72][73]
Il 23 febbraio 2018 viene convocato per uno stage anche dal CT ad interimLuigi Di Biagio.[15][77]
Il 1º settembre 2018 è stato convocato dal CT Roberto Mancini per le prime due partite della nazionale italiana nella neonata UEFA Nations League.[78] Esordisce in nazionale il 7 settembre 2018, a 26 anni, giocando titolare nella partita contro la Polonia (1-1) disputata a Bologna.[79] Il 14 ottobre 2018 realizza la sua prima rete in azzurro, sempre contro la Polonia, siglando nei minuti di recupero il definitivo 1-0 che permette all'Italia di non retrocedere nella Lega B della Nations League e condanna contemporaneamente alla retrocessione la squadra polacca.[80]
Il CT Mancini continua a convocarlo, con una certa frequenza, anche negli anni seguenti.[81] Nel giugno 2022, dopo aver giocato nel pareggio di Nations League contro la Germania,[82] si infortuna ed è costretto al rientro anticipato.[83]
^Raduno 2010-2011: via, l'Inter è ripartita, F.C. Internazionale Milano, 12 luglio 2010. URL consultato il 27 novembre 2010 (archiviato dall'url originale il 21 novembre 2010).
^BIRAGHI E MANAJ AL PESCARA, su inter.it, F.C. Internazionale Milano, 11 luglio 2016. URL consultato l'11 giugno 2016 (archiviato dall'url originale il 14 luglio 2016).
^Biraghi ceduto all’Inter, su it.violachannel.tv, ACF Fiorentina, 29 agosto 2019. URL consultato il 4 ottobre 2020 (archiviato dall'url originale il 29 agosto 2019).