# Divisione Nazionale 1928-1929

La Divisione Nazionale 1928-1929 è stata la 29ª edizione della massima serie del campionato italiano di calcio, disputata tra il 30 settembre 1928 e il 7 luglio 1929 e conclusa con la vittoria del Bologna, al suo secondo titolo. Si trattò dell'ultimo torneo strutturato su un meccanismo a gironi plurimi.
Capocannoniere del torneo è stato Gino Rossetti (Torino) con 36 reti.

## Stagione
### Novità
#### Verso la Serie A

Il deciso attivismo di Leandro Arpinati al comando della FIGC partorì nell'estate del 1928 una novità che divenne tappa storica per il calcio italiano. Il mondo del pallone tricolore era infatti oramai pronto per dare una svolta che lo portasse ad assumere un'organizzazione simile a quella dei maestri inglesi; per raggiungere tale scopo, i continui cambiamenti di format del torneo dovevano terminare per sempre. Fu così decisa quella svolta che portò all'introduzione anche in Italia della formula del girone unico all'inglese. Non trattavasi in realtà di un'assoluta novità, essendo già stata sperimentata nella stagione 1909-1910; tuttavia fu quella un'esperienza estemporanea, subito travolta dall'elefantiaco ingrandimento del torneo.
Il nuovo campionato 1928-1929 sarebbe stato quindi l'ultimo disputato con la formula dei due gironi, introdotta dalla carta di Viareggio nel 1926. Dalla stagione successiva, le grandi squadre sarebbero state riunite in un nuovo torneo, la Serie A, mentre le escluse avrebbero costituito l'altrettanto inedita Serie B.
A tal fine, Arpinati decise unilateralmente l'allargamento una tantum di quello che a quel punto sarebbe stato l'ultimo torneo di Divisione Nazionale. Il piano iniziale di Arpinati per la creazione della Serie A e Serie B erano inizialmente i seguenti:
«...nella stagione 1929-30 avremo in Divisione Nazionale 32 squadre delle quali 16 parteciperanno alla Serie A e 16 alla Serie B... Questo sistema in sostanza porta a quel girone unico da tanto tempo atteso, mentre crea tra la massima categoria e la Prima Divisione un utile cuscinetto. Nella stagione 1928-1929 si avrà invece un campionato di transizione: verrà giocato su due gironi di 12 squadre ciascuno, cioè le attuali meno l'Hellas e la Reggiana, oltre ovviamente alle vincenti dei quattro gironi della Prima Divisione. Le prime quattro classificate di ogni girone (totale 8 squadre) disputeranno un girone finale per il titolo di campione d'Italia 1928-1929, mentre le 16 escluse disputeranno la Coppa CONI. Le prime quattro classificate di ogni girone della Coppa CONI (totale 8 squadre) andranno per la stagione 1929-30 a completare la Serie A con le otto finaliste, mentre le ultime quattro classificate di ogni girone, più le prime due classificate di ogni girone di Prima Divisione (totale 16 squadre) formeranno la Serie B della Divisione Nazionale.»
(Deliberazione della FIGC riportata da La Stampa del 19 marzo 1928, p. 2.)
Arpinati in pratica aveva decretato l'allargamento della Divisione Nazionale da 20 a 24 squadre: con decreto federale furono ripescate quattro delle sei retrocesse del precedente torneo, fra cui la Lazio, società destinata a dare con la Roma un'adeguata visibilità alla Capitale. Oltre alla Lazio, furono ripescati anche Napoli, Livorno e Dominante. Queste 24 società sarebbero state suddivise in due gironi da dodici: le prime quattro di ogni girone si sarebbero contese il titolo in un girone finale a 8 e si sarebbero qualificate direttamente al nuovo campionato di Serie A a girone unico, mentre le 16 escluse dal girone finale si sarebbero giocate la salvezza in un torneo di qualificazione, la Coppa CONI, che avrebbe messo in palio gli otto posti rimanenti per il primo campionato di Serie A a girone unico. Le otto escluse sarebbero finite nel nuovo campionato di Serie B insieme a 8 squadre di Prima Divisione.
Tuttavia, successivamente, Arpinati decise di allargare ulteriormente l'ultimo campionato di Divisione Nazionale. Con decreto del 28 giugno deliberò che:
«Nella prossima stagione al campionato di Divisione Nazionale parteciperanno 32 squadre, che giuocheranno in due gironi di 16 ciascuna... Le iscrizioni si chiuderanno il prossimo 10 luglio. In base alle medesime pervenute, il Direttorio Federale stabilirà i gironi fissando di conseguenza le varie squadre da promuovere. Tuttavia possiamo finora comunicarvi che in Divisione Nazionale entreranno otto squadre più delle previste seguendo nella scelta criteri politici oltre che sportivi. Oltre alle 24 che già hanno diritto, andranno dunque nella massima categoria le seguenti squadre: Hellas, Reggiana, Triestina (indipendentemente quest'ultima dal posto che occupa in classifica, ma in omaggio agli altri titoli della nobilissima Trieste), la Fiorentina, il Legnano, la Milanese, la Venezia e la Prato, tenendo per questa in conto che la cittadina toscana ha ben 155 giuocatori tesserati...»
(Deliberazione della FIGC riportata da La Stampa del 29 giugno 1928, p. 5.)
Ripescò quindi anche le due ultime classificate del campionato di Divisione Nazionale appena concluso (Verona e Reggiana) e vennero quindi promosse d'ufficio le seconde classificate dei quattro gironi della Prima Divisione appena conclusa, tra cui spiccavano due società rappresentanti capoluoghi regionali, cioè il Venezia e la Fiorentina nata appena due anni prima. A completare l'organico vennero iscritte d'ufficio la Fiumana e la Triestina, con l'evidente obiettivo politico di inserire nel giro del grande calcio quei territori orientali annessi dall'Italia nel 1919 con la vittoria nella Grande Guerra, ma che fino a quel punto non erano riusciti a scalfire le gerarchie del consolidato calcio della Penisola. A dire il vero, la Fiumana fu ammessa soltanto poche settimane prima dell'inizio del campionato prendendo il posto della US Milanese, inizialmente iscritta d'ufficio in Divisione Nazionale ma poi costretta dalle autorità fasciste a fondersi con l'Inter, formando la nuova società dell'Ambrosiana.
I due gironi da sedici squadre così costruiti avrebbero dunque avuto il duplice scopo sia di assegnare il titolo del 1929 - che per ovvi motivi di tempistica a quel punto non sarebbe stato disputato con un torneo conclusivo, bensì reintroducendo per un'ultima volta la finale (e per lo stesso motivo anche la Coppa CONI non fu disputata) -, sia quello di suddividere le società in un raggruppamento d'élite e in uno cadetto per le stagioni a venire: in particolare, metà delle società avrebbero costituito la Serie A, quelle classificate tra la nona e la quattordicesima posizione la Serie B insieme alle quattro vincenti della Prima Divisione, mentre le ultime due classificate di ogni girone sarebbero state addirittura retrocesse in Prima Divisione.
Una citazione a parte va fatta per la decisione, presa dall'Ente Sportivo Provinciale Fascista, di obbligare alla fusione la titolata Internazionale con la neopromossa (seppur d'ufficio) US Milanese. Le due società, a quell'epoca al secondo e terzo posto dietro al Milan nella graduatoria delle squadre milanesi per numero di scudetti vinti, furono costrette a unirsi in un nuovo soggetto dai colori biancorossi, l'Ambrosiana, la quale mantenne l'impianto societario della Milanese, con il gerarca Ernesto Torrusio alla presidenza (tornando poi l'anno successivo ai colori nerazzurri). Le motivazioni di tale atto vanno ricercate sia nel programma di riduzione e conseguente fascistizzazione delle squadre già portato avanti dal regime in altre città, sia nella volontà di ammettere una seconda società giuliana (la Fiumana) nel massimo campionato, sia nel fatto che il vecchio nome dell'Inter appariva ai fascisti totalmente loro avverso, in quanto richiamante quello di organizzazioni politiche ostili al fascismo stesso.

### Formula

Due gironi interregionali da 16 squadre ciascuno, le cui vincitrici disputano la finale per lo scudetto con partita e contropartita. Le società posizionate entro l'ottava posizione di ciascun girone sono iscritte, per l'anno successivo, alla Serie A; le squadre piazzate dal nono al quattordicesimo posto vengono retrocesse in Serie B; le ultime rimaste sono relegate in terza serie. Successivamente anche le squadre none classificate saranno ammesse alla A, e le ultime alla B, allargando entrambi i tornei.

### Avvenimenti

L'ultimo campionato a gironi ebbe verdetti molto chiari e limpidi. Nei due raggruppamenti, la superiorità dei campioni in carica del Torino e del Bologna fu indiscutibile nell'arco della stagione.
I granata ebbero come unico avversario di spessore un rilanciato Milan che, con alcuni acquisti di valore, riuscì dopo lungo tempo a disputare un campionato all'altezza del suo blasone. Lo scontro diretto a San Siro sancì il provvisorio aggancio dei rossoneri in testa alla classifica ma, alla lunga, la maggiore esperienza e il superiore tasso tecnico dei giocatori granata ebbero la meglio. Mentre i lombardi segnavano il passo, i piemontesi proseguirono spediti grazie ai gol dell'ormai consolidato Trio delle Meraviglie Libonatti-Baloncieri-Rossetti; un pareggio fra le due formazioni nel ritorno al Filadelfia fu sufficiente a garantire al Toro l'accesso in finale.
Dal canto loro, i felsinei dovettero guardarsi dalla Juventus. Le due avversarie pareggiarono il primo incontro diretto a Bologna, ma a quel punto i rossoblu iniziarono una strepitosa calvalcata di vittorie consecutive che si concluse solo nella gara di ritorno con la stessa Juve, quando però ormai il vantaggio accumulato dagli emiliani apparve, ed effettivamente fu, incolmabile; alla fine la Juventus fu anche raggiunta dal Brescia.
Neanche la corsa per accedere al nuovo campionato di Serie A ebbe grande storia: fra le dodici squadre ammesse d'ufficio dalla FIGC, solo il Livorno riuscì a occupare uno dei sedici posti disponibili per il nuovo massimo torneo del calcio italiano. Fra le squadre destinate a scendere in B si segnalò il Casale, campione d'Italia 1914. Gli unici verdetti rimasti in sospeso riguardarono i piazzamenti di Lazio e Napoli terminate appaiate all'ultimo posto disponibile per la A; tale ex aequo spinse la FIGC a optare per un'ulteriore deroga alle regole da essa stessa precedentemente stabilite e, allo spareggio svoltosi a Milano e terminato in parità, non seguì alcuna ripetizione della gara poiché si scelse un allargarmento a 18 squadre per la costituenda Serie A, ammettendo così entrambe le formazioni, oltre alla Triestina nona nell'altro raggruppamento. La FIGC cercò così di dare rappresentanza alle regioni "deboli" del calcio italiano, ovvero il Mezzogiorno e la Venezia Giulia da solo un decennio annessa al Regno, e a cascata evitò alla Fiorentina di sprofondare in terza serie ingrandendo anche la Serie B.
Vi fu infine da segnalare, alla fine di questa stagione, la prima partecipazione italiana ad un trofeo internazionale, la Coppa Mitropa, più popolarmente definita Coppa Europa. Poiché le date della nuova competizione si sovrapposero in parte a quelle delle finali del campionato, la FIGC scelse le due rappresentanti tricolori tra le vincitrici di due partite da disputarsi fra le seconde classificate dei gironi e due blasonate ex vincitrici del campionato: se la Juventus ebbe la meglio sull'Ambrosiana, non fu così per il Milan che, per sua sfortuna, dopo due pareggi fu eliminato dal Genova 1893 a causa di un avverso lancio della monetina.
L'ultima finale nella storia del campionato italiano fu dunque disputata fra i campioni uscenti granata e i rossoblù emiliani. Nell'andata, a Bologna, i felsinei si imposero grazie al gol del capitano Giuseppe Della Valle e alla doppietta di Angelo Schiavio, mentre i piemontesi non riuscirono ad andare oltre la rete della bandiera siglata verso lo scadere dall'oriundo Julio Libonatti. Nel ritorno, al Filadelfia, la squadra scudettata segnò nel secondo tempo ancora con Libonatti. Grazie al regolamento, che prevedeva di calcolare unicamente gli esiti delle partite senza riguardo alla semplice conta dei gol segnati, il Torino riuscì a pareggiare la serie, guadagnandosi uno spareggio che la Federazione fissò per la settimana successiva a Roma.
Allo stadio Nazionale del PNF di Roma l'incontro fu molto acceso. Dopo un primo tempo a reti inviolate, all'inizio della ripresa il direttore di gara Albino Carraro espulse il calciatore del Bologna Alfredo Pitto e poi, con una decisione apparsa discutibile, il torinese Antonio Janni e il bolognese Giuseppe Martelli, protagonisti di uno scontro di gioco violento ma fortuito. La svolta dell'incontro si verificò all'82', quando anche il Torino era rimasto in nove uomini per l'infortunio di Luciano Vezzani: l'attaccante del Bologna Giuseppe Muzzioli, infatti, riuscì a battere il portiere avversario Vincenzo Bosia; il risultato non cambiò più e i felsinei poterono festeggiare il secondo scudetto della loro storia. I granata, tuttavia, presentarono richiesta di annullamento dell'incontro a causa di una presunta scorrettezza compiuta dal calciatore rossoblù Martelli: egli infatti rientrò in campo, dopo essersi ripreso dallo scontro con Janni e apparentemente ignaro di essere stato espulso, continuando a giocare per il tempo di un'azione, fino a che l'arbitro se ne accorse e lo riallontanò. Lo stesso Carraro, intervistato in merito, affermò comunque che secondo lui non vi fu un'infrazione del regolamento. In data 10 luglio 1929, il Direttorio Divisioni Superiori, per voce del presidente Ottorino Barassi, respinse il reclamo del Torino per vizio di procedura e confermò il risultato dello spareggio.

## Girone A
### Squadre partecipanti

| Club | Stagione | Città | Stadio | Stagione precedente |
| Alessandria | dettagli | Alessandria | Campo degli Orti | 3º nel gir.finale della Div.Nazionale |
| Atalanta | dettagli | Bergamo | Stadio Mario Brumana | 1º nel gir. A della 1ª Divisione |
| Bari | dettagli | Bari | Campo degli Sports / Campo San Lorenzo | 3º nel gir. D della 1ª Divisione |
| Casale | dettagli | Casale Monferrato | Stadio Natale Palli | 8º nel gir.finale della Div.Nazionale |
| La Dominante | dettagli | Genova | Stadio del Littorio | 10º nel gir.B della Div.Nazionale |
| Legnano | dettagli | Legnano | Stadio di via Carlo Pisacane | 2º nel gir.B della 1ª Divisione |
| Livorno | dettagli | Livorno | Campo di Villa Chayes | 9º nel gir.B della Div.Nazionale |
| Milan | dettagli | Milano | Campo San Siro | 6º nel gir.finale della Div.Nazionale |
| Modena | dettagli | Modena | Campo di viale Fontanelli | 5º nel gir.B della Div.Nazionale |
| Novara | dettagli | Novara | Campo di via Lombroso | 6º nel gir.B della Div.Nazionale |
| Padova | dettagli | Padova | Stadio Silvio Appiani | 7º nel gir.A della Div.Nazionale |
| Prato | dettagli | Prato | Campo Vittorio Veneto | 2º nel gir. C della 1ª Divisione |
| Pro Patria | dettagli | Busto Arsizio | Stadio Comunale | 7º nel gir.B della Div.Nazionale |
| Roma | dettagli | Roma | Stadio Nazionale | 8º nel gir.B della Div.Nazionale |
| Torino | dettagli | Torino | Stadio Filadelfia | Campione d'Italia |
| Triestina | dettagli | Trieste | Campo di Montebello | 4º nel gir.A della 1ª Divisione |

### Classifica finale

| Pos. | Squadra | Pt | G | V | N | P | GF | GS |
| 1. | Torino | 48 | 30 | 21 | 6 | 3 | 115 | 31 |
| 2. | Milan | 42 | 30 | 18 | 6 | 6 | 77 | 34 |
| 3. | Roma | 40 | 30 | 17 | 6 | 7 | 71 | 34 |
| 3. | Alessandria | 40 | 30 | 16 | 8 | 6 | 64 | 47 |
| 5. | Pro Patria | 36 | 30 | 15 | 6 | 9 | 68 | 52 |
| 6. | Modena | 35 | 30 | 14 | 7 | 9 | 59 | 51 |
| 7. | Livorno | 32 | 30 | 13 | 6 | 11 | 61 | 62 |
| 8. | Padova | 30 | 30 | 11 | 8 | 11 | 53 | 58 |
| 9. | Triestina | 29 | 30 | 12 | 5 | 13 | 60 | 68 |
| 10. | Casale | 23 | 30 | 8 | 7 | 15 | 59 | 72 |
| 10. | La Dominante | 23 | 30 | 8 | 7 | 15 | 38 | 68 |
| 10. | Novara | 23 | 30 | 8 | 7 | 15 | 40 | 77 |
| 13. | Bari | 22 | 30 | 6 | 10 | 14 | 38 | 61 |
| 14. | Atalanta | 20 | 30 | 6 | 8 | 16 | 27 | 53 |
| 15. | Prato | 19 | 30 | 7 | 5 | 18 | 36 | 63 |
| 16. | Legnano | 18 | 30 | 7 | 4 | 19 | 33 | 68 |
Legenda:
    Qualificata alle finali nazionali.
    Retrocesse in Serie B 1929-1930.
    Retrocesse in Prima Divisione 1929-1930.
Regolamento:
    Due punti a vittoria, uno a pareggio, zero a sconfitta.
    Era in vigore il pari merito.
Note:
    La Triestina, inizialmente destinata a retrocedere in Serie B 1929-1930, fu ammessa in Serie A 1929-1930 per allargamento dei quadri.
    Il Prato e il Legnano, inizialmente destinati a retrocedere in Prima Divisione 1929-1930, furono ammessi in Serie B 1929-1930 per allargamento dei quadri.
    Il Milan fu iscritto alle qualificazioni per la Coppa dell'Europa Centrale 1929.

### Risultati
#### Tabellone

| | ALE | ATA | BAR | CAS | LAD | LEG | LIV | MIL | MOD | NOV | PAD | PRA | PRO | ROM | TOR | TRI |
| Alessandria | –––– | 2-2 | 6-3 | 1-1 | 4-0 | 2-0 | 5-1 | 1-0 | 3-1 | 3-0 | 2-1 | 2-1 | 4-1 | 0-2 | 3-3 | 2-0 |
| Atalanta | 0-2 | –––– | 0-0 | 2-0 | 2-0 | 2-0 | 0-3 | 0-1 | 0-0 | 2-0 | 2-2 | 2-0 | 0-0 | 1-3 | 0-1 | 4-1 |
| Bari | 4-1 | 1-1 | –––– | 1-4 | 3-2 | 2-0 | 1-1 | 2-2 | 2-3 | 3-3 | 4-1 | 0-3 | 0-0 | 2-1 | 0-2 | 4-2 |
| Casale | 1-4 | 1-0 | 0-0 | –––– | 1-1 | 6-0 | 7-2 | 3-3 | 5-2 | 6-2 | 3-0 | 4-2 | 3-3 | 1-5 | 0-1 | 1-4 |
| La Dominante | 0-1 | 2-2 | 1-0 | 2-2 | –––– | 3-2 | 2-0 | 0-2 | 0-0 | 4-2 | 0-3 | 3-2 | 3-5 | 1-2 | 1-1 | 2-0 |
| Legnano | 1-1 | 1-1 | 2-1 | 5-2 | 0-1 | –––– | 1-0 | 1-5 | 0-3 | 0-0 | 1-0 | 2-0 | 1-0 | 1-2 | 1-2 | 2-3 |
| Livorno | 2-2 | 3-2 | 1-1 | 5-0 | 8-1 | 4-1 | –––– | 1-0 | 2-0 | 5-3 | 2-0 | 2-1 | 2-2 | 1-0 | 1-3 | 1-1 |
| Milan | 2-2 | 5-1 | 5-1 | 3-1 | 5-2 | 6-1 | 2-1 | –––– | 1-1 | 7-0 | 1-2 | 4-0 | 3-2 | 0-1 | 3-1 | 2-1 |
| Modena | 1-1 | 4-0 | 2-1 | 4-0 | 1-0 | 3-2 | 5-1 | 3-0 | –––– | 1-1 | 5-1 | 0-0 | 1-1 | 3-1 | 1-5 | 4-2 |
| Novara | 0-1 | 5-1 | 2-0 | 2-0 | 0-0 | 1-1 | 0-2 | 1-4 | 4-2 | –––– | 1-1 | 2-1 | 3-2 | 1-3 | 1-7 | 2-1 |
| Padova | 3-3 | 1-0 | 5-0 | 3-3 | 0-0 | 3-1 | 4-3 | 1-2 | 2-3 | 2-2 | –––– | 2-1 | 4-3 | 4-3 | 0-0 | 2-2 |
| Prato | 3-1 | 0-0 | 2-0 | 3-0 | 2-1 | 1-0 | 2-3 | 0-2 | 2-3 | 1-2 | 1-3 | –––– | 2-2 | 0-0 | 0-2 | 2-1 |
| Pro Patria | 4-0 | 2-0 | 2-1 | 2-1 | 2-3 | 2-1 | 2-1 | 0-4 | 3-1 | 7-0 | 3-0 | 5-1 | –––– | 4-3 | 1-3 | 2-1 |
| Roma | 2-2 | 3-0 | 0-0 | 2-1 | 3-1 | 4-1 | 0-0 | 1-1 | 5-0 | 4-0 | 1-2 | 4-0 | 3-0 | –––– | 6-1 | 4-0 |
| Torino | 6-1 | 7-0 | 0-0 | 4-0 | 8-1 | 7-0 | 10-1 | 2-2 | 3-1 | 5-0 | 3-1 | 9-1 | 2-3 | 3-0 | –––– | 12-0 |
| Triestina | 2-1 | 2-0 | 7-1 | 4-2 | 5-1 | 1-4 | 4-2 | 1-0 | 3-1 | 1-0 | 3-0 | 2-2 | 1-3 | 3-3 | 2-2 | –––– |

#### Calendario

| andata (1ª) | andata (1ª) | Prima giornata | ritorno (16ª) | ritorno (16ª) |
| 30 set. | 2-3 | Bari-Modena | 1-2 | 3 feb. |
| 30 set. | 4-2 | Casale-Prato | 0-3 | 3 feb. |
| 30 set. | 2-2 | Livorno-Alessandria | 1-5 | 3 feb. |
| 30 set. | 2-1 | Milan-Triestina | 0-1 | 3 feb. |
| 30 set. | 2-2 | Padova-Novara | 1-1 | 3 feb. |
| 30 set. | 2-0 | Pro Patria-Atalanta | 0-0 | 3 feb. |
| 30 set. | 4-1 | Roma-Legnano | 2-1 | 3 feb. |
| 30 set. | 8-1 | Torino-La Dominante | 1-1 | 3 feb. |
| andata (2ª) | andata (2ª) | Seconda giornata | ritorno (17ª) | ritorno (17ª) |
| 7 ott. | 3-2 | Alessandria-Atalanta | 2-0 | 10 feb. |
| 7 ott. | 2-1 | Bari-Roma | 0-0 | 10 feb. |
| 7 ott. | 0-1 | Legnano-La Dominante | 2-3 | 10 feb. |
| 7 ott. | 2-2 | Livorno-Pro Patria | 1-2 | 10 feb. |
| 7 ott. | 5-1 | Modena-Padova | 3-2 | 10 feb. |
| 7 ott. | 1-7 | Novara-Torino | 0-5 | 10 feb. |
| 7 ott. | 0-2 | Prato-Milan | 0-4 | 10 feb. |
| 7 ott. | 4-2 | Triestina-Casale | 4-1 | 10 feb. |
| andata (3ª) | andata (3ª) | Terza giornata | ritorno (18ª) | ritorno (18ª) |
| 21 ott. | 0-0 | Atalanta-Modena | 0-4 | 17 feb. |
| 21 ott. | 6-0 | Casale-Legnano | 2-5 | 17 feb. |
| 21 ott. | 4-2 | La Dominante-Novara | 0-0 | 17 feb. |
| 21 ott. | 2-1 | Milan-Livorno | 0-1 | 17 feb. |
| 21 ott. | 3-3 | Padova-Alessandria | 1-2 | 17 feb. |
| 21 ott. | 2-1 | Pro Patria-Bari | 0-0 | 17 feb. |
| 21 ott. | 4-0 | Roma-Prato | 0-0 | 17 feb. |
| 21 ott. | 12-0 | Torino-Triestina | 2-2 | 17 feb. |
| andata (4ª) | andata (4ª) | Quarta giornata | ritorno (19ª) | ritorno (19ª) |
| 28 ott. | 1-1 | Alessandria-Casale | 4-1 | 24 feb. |
| 28 ott. | 1-1 | Bari-Atalanta | 0-0 | 24 feb. |
| 28 ott. | 1-0 | Legnano-Pro Patria | 1-2 | 24 feb. |
| 28 ott. | 1-5 | Modena-Torino | 1-3 | 24 feb. |
| 28 ott. | 1-4 | Novara-Milan | 0-7 | 6 mar. |
| 28 ott. | 4-3 | Padova-Livorno | 0-2 | 24 feb. |
| 28 ott. | 2-1 | Prato-La Dominante | 2-3 | 24 feb. |
| 28 ott. | 3-3 | Triestina-Roma | 0-4 | 24 feb. |
| andata (5ª) | andata (5ª) | Quinta giornata | ritorno (20ª) | ritorno (20ª) |
| 1º nov. | 4-1 | Atalanta-Triestina | 0-2 | 17 mar. |
| 1º nov. | 6-2 | Casale-Novara | 0-2 | 17 mar. |
| 1º nov. | 8-1 | Livorno-La Dominante | 0-2 | 17 mar. |
| 1º nov. | 5-1 | Milan-Bari | 2-2 | 17 mar. |
| 1º nov. | 2-1 | Padova-Prato | 3-1 | 17 mar. |
| 1º nov. | 3-1 | Pro Patria-Modena | 1-1 | 17 mar. |
| 1º nov. | 2-2 | Roma-Alessandria | 2-0 | 17 mar. |
| 1º nov. | 7-0 | Torino-Legnano | 2-1 | 17 mar. |
| andata (6ª) | andata (6ª) | Sesta giornata | ritorno (21ª) | ritorno (21ª) |
| 4 nov. | 1-0 | Alessandria-Milan | 2-2 | 31 mar. |
| 4 nov. | 1-0 | La Dominante-Bari | 2-3 | 31 mar. |
| 4 nov. | 1-1 | Legnano-Atalanta | 0-2 | 31 mar. |
| 4 nov. | 1-3 | Livorno-Torino | 1-10 | 31 mar. |
| 4 nov. | 4-0 | Modena-Casale | 2-5 | 31 mar. |
| 4 nov. | 1-3 | Novara-Roma | 0-4 | 31 mar. |
| 4 nov. | 2-2 | Prato-Pro Patria | 1-5 | 31 mar. |
| 4 nov. | 3-0 | Triestina-Padova | 2-2 | 31 mar. |
| andata (7ª) | andata (7ª) | Settima giornata | ritorno (22ª) | ritorno (22ª) |
| 18 nov. | 2-0 | Atalanta-Novara | 1-5 | 14 apr. |
| 18 nov. | 0-3 | Bari-Prato | 0-2 | 14 apr. |
| 18 nov. | 7-2 | Casale-Livorno | 0-5 | 14 apr. |
| 18 nov. | 0-0 | La Dominante-Modena | 0-1 | 14 apr. |
| 18 nov. | 6-1 | Milan-Legnano | 5-1 | 14 apr. |
| 18 nov. | 2-1 | Pro Patria-Triestina | 3-1 | 14 apr. |
| 18 nov. | 1-2 | Roma-Padova | 3-4 | 14 apr. |
| 18 nov. | 6-1 | Torino-Alessandria | 3-3 | 9 mag. |
| andata (8ª) | andata (8ª) | Ottava giornata | ritorno (23ª) | ritorno (23ª) |
| 25 nov. | 6-3 | Alessandria-Bari | 1-4 | 21 apr. |
| 25 nov. | 2-0 | Atalanta-Casale | 0-1 | 21 apr. |
| 25 nov. | 1-2 | La Dominante-Roma | 1-3 | 21 apr. |
| 25 nov. | 2-0 | Legnano-Prato | 0-1 | 21 apr. |
| 25 nov. | 3-1 | Milan-Torino | 2-2 | 21 apr. |
| 25 nov. | 4-2 | Modena-Triestina | 1-3 | 21 apr. |
| 25 nov. | 0-2 | Novara-Livorno | 3-5 | 21 apr. |
| 25 nov. | 4-3 | Padova-Pro Patria | 0-3 | 21 apr. |
| andata (9ª) | andata (9ª) | Nona giornata | ritorno (24ª) | ritorno (24ª) |
| 9 dic. | 1-1 | Casale-La Dominante | 2-2 | 5 mag. |
| 9 dic. | 2-1 | Legnano-Bari | 0-2 | 5 mag. |
| 9 dic. | 3-2 | Livorno-Atalanta | 3-0 | 5 mag. |
| 9 dic. | 1-2 | Padova-Milan | 2-1 | 5 mag. |
| 9 dic. | 1-2 | Prato-Novara | 1-2 | 5 mag. |
| 9 dic. | 1-3 | Pro Patria-Torino | 3-2 | 5 mag. |
| 9 dic. | 5-0 | Roma-Modena | 1-3 | 5 mag. |
| 9 dic. | 2-1 | Triestina-Alessandria | 0-2 | 5 mag. |
| andata (10ª) | andata (10ª) | Decima giornata | ritorno (25ª) | ritorno (25ª) |
| 16 dic. | 2-0 | Alessandria-Legnano | 1-1 | 12 mag. |
| 16 dic. | 2-2 | Atalanta-Padova | 0-1 | 12 mag. |
| 16 dic. | 1-1 | Bari-Livorno | 1-1 | 12 mag. |
| 16 dic. | 2-0 | La Dominante-Triestina | 1-5 | 12 mag. |
| 16 dic. | 3-1 | Milan-Casale | 3-3 | 23 mag. |
| 16 dic. | 1-1 | Modena-Novara | 2-4 | 12 mag. |
| 16 dic. | 4-3 | Pro Patria-Roma | 0-3 | 12 mag. |
| 16 dic. | 9-1 | Torino-Prato | 2-0 | 12 mag. |
| andata (11ª) | andata (11ª) | Undicesima giornata | ritorno (26ª) | ritorno (26ª) |
| 23 dic. | 4-1 | Alessandria-Pro Patria | 0-4 | 19 mag. |
| 23 dic. | 2-0 | Atalanta-La Dominante | 2-2 | 19 mag. |
| 23 dic. | 1-0 | Legnano-Livorno | 1-4 | 19 mag. |
| 23 dic. | 1-1 | Milan-Modena | 0-3 | 19 mag. |
| 23 dic. | 2-0 | Novara-Bari | 3-3 | 19 mag. |
| 23 dic. | 0-0 | Padova-Torino | 1-3 | 19 mag. |
| 23 dic. | 2-1 | Roma-Casale | 5-1 | 19 mag. |
| 23 dic. | 2-2 | Triestina-Prato | 1-2 | 19 mag. |
| andata (12ª) | andata (12ª) | Dodicesima giornata | ritorno (27ª) | ritorno (27ª) |
| 6 gen. | 4-2 | Bari-Triestina | 1-7 | 26 mag. |
| 6 gen. | 0-2 | La Dominante-Milan | 2-5 | 26 mag. |
| 6 gen. | 1-0 | Livorno-Roma | 0-0 | 26 mag. |
| 6 gen. | 0-1 | Novara-Alessandria | 0-3 | 26 mag. |
| 6 gen. | 3-1 | Padova-Legnano | 0-1 | 26 mag. |
| 6 gen. | 2-3 | Prato-Modena | 0-0 | 26 mag. |
| 6 gen. | 2-1 | Pro Patria-Casale | 3-3 | 26 mag. |
| 6 gen. | 7-0 | Torino-Atalanta | 1-0 | 26 mag. |
| andata (13ª) | andata (13ª) | Tredicesima giornata | ritorno (28ª) | ritorno (28ª) |
| 13 gen. | 0-2 | Bari-Torino | 0-0 | 2 giu. |
| 13 gen. | 3-0 | Casale-Padova | 3-3 | 2 giu. |
| 13 gen. | 0-1 | La Dominante-Alessandria | 0-4 | 2 giu. |
| 13 gen. | 0-3 | Legnano-Modena | 2-3 | 2 giu. |
| 13 gen. | 2-1 | Livorno-Prato | 3-2 | 2 giu. |
| 13 gen. | 3-2 | Milan-Pro Patria | 4-0 | 2 giu. |
| 13 gen. | 3-0 | Roma-Atalanta | 3-1 | 2 giu. |
| 13 gen. | 1-0 | Triestina-Novara | 1-2 | 2 giu. |
| andata (14ª) | andata (14ª) | Quattordicesima giornata | ritorno (29ª) | ritorno (29ª) |
| 20 gen. | 2-1 | Alessandria-Prato | 1-3 | 9 giu. |
| 20 gen. | 0-1 | Atalanta-Milan | 1-5 | 9 giu. |
| 20 gen. | 0-0 | Casale-Bari | 4-1 | 9 giu. |
| 20 gen. | 5-1 | Modena-Livorno | 0-2 | 9 giu. |
| 20 gen. | 3-2 | Novara-Pro Patria | 0-7 | 9 giu. |
| 20 gen. | 0-0 | Padova-La Dominante | 3-0 | 9 giu. |
| 20 gen. | 3-0 | Torino-Roma | 1-6 | 9 giu. |
| 20 gen. | 1-4 | Triestina-Legnano | 3-2 | 9 giu. |
| andata (15ª) | andata (15ª) | Quindicesima giornata | ritorno (30ª) | ritorno (30ª) |
| 27 gen. | 4-1 | Bari-Padova | 0-5 | 16 giu. |
| 27 gen. | 0-1 | Casale-Torino | 0-4 | 16 giu. |
| 27 gen. | 0-0 | Legnano-Novara | 1-1 | 30 mag. |
| 27 gen. | 1-1 | Livorno-Triestina | 2-4 | 16 giu. |
| 27 gen. | 1-1 | Modena-Alessandria | 1-3 | 16 giu. |
| 27 gen. | 0-0 | Prato-Atalanta | 0-2 | 16 giu. |
| 27 gen. | 2-3 | Pro Patria-La Dominante | 5-3 | 16 giu. |
| 27 gen. | 1-1 | Roma-Milan | 1-0 | 16 giu. |

### Statistiche
#### Squadre
##### Classifica in divenire

| | 1ª | 2ª | 3ª | 4ª | 5ª | 6ª | 7ª | 8ª | 9ª | 10ª | 11ª | 12ª | 13ª | 14ª | 15ª | 16ª | 17ª | 18ª | 19ª | 20ª | 21ª | 22ª | 23ª | 24ª | 25ª | 26ª | 27ª | 28ª | 29ª | 30ª |
| Alessandria | 1 | 3 | 4 | 5 | 6 | 8 | 8 | 10 | 10 | 12 | 14 | 16 | 18 | 20 | 21 | 23 | 25 | 27 | 29 | 29 | 30 | 31 | 31 | 33 | 34 | 34 | 36 | 38 | 38 | 40 |
| Atalanta | 0 | 0 | 1 | 2 | 4 | 5 | 7 | 9 | 9 | 10 | 12 | 12 | 12 | 12 | 13 | 14 | 14 | 14 | 15 | 15 | 17 | 17 | 17 | 17 | 17 | 18 | 18 | 18 | 18 | 20 |
| Bari | 0 | 2 | 2 | 3 | 3 | 3 | 3 | 3 | 3 | 4 | 4 | 6 | 6 | 7 | 9 | 9 | 10 | 11 | 12 | 13 | 15 | 15 | 17 | 19 | 20 | 21 | 21 | 22 | 22 | 22 |
| Casale | 2 | 2 | 4 | 5 | 7 | 7 | 9 | 9 | 10 | 10 | 10 | 10 | 12 | 13 | 13 | 13 | 13 | 13 | 13 | 13 | 15 | 15 | 17 | 18 | 19 | 19 | 20 | 21 | 23 | 23 |
| La Dominante | 0 | 2 | 4 | 4 | 4 | 6 | 7 | 7 | 8 | 10 | 10 | 10 | 10 | 11 | 13 | 14 | 16 | 17 | 19 | 21 | 21 | 21 | 21 | 22 | 22 | 23 | 23 | 23 | 23 | 23 |
| Legnano | 0 | 0 | 0 | 2 | 2 | 3 | 3 | 5 | 7 | 7 | 9 | 9 | 9 | 11 | 12 | 12 | 12 | 14 | 14 | 14 | 14 | 14 | 14 | 14 | 14 | 15 | 17 | 17 | 17 | 18 |
| Livorno | 1 | 2 | 2 | 2 | 4 | 4 | 4 | 6 | 8 | 9 | 9 | 11 | 13 | 13 | 14 | 14 | 14 | 16 | 18 | 18 | 18 | 20 | 22 | 24 | 25 | 27 | 28 | 30 | 32 | 32 |
| Milan | 2 | 4 | 6 | 8 | 10 | 10 | 12 | 14 | 16 | 18 | 19 | 21 | 23 | 25 | 26 | 26 | 28 | 28 | 30 | 31 | 32 | 34 | 35 | 35 | 36 | 36 | 38 | 40 | 42 | 42 |
| Modena | 2 | 4 | 5 | 5 | 5 | 7 | 8 | 10 | 10 | 11 | 12 | 14 | 16 | 18 | 19 | 21 | 23 | 25 | 25 | 26 | 26 | 28 | 28 | 30 | 30 | 32 | 33 | 35 | 35 | 35 |
| Novara | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 3 | 4 | 6 | 6 | 6 | 8 | 9 | 10 | 10 | 11 | 11 | 13 | 13 | 15 | 15 | 17 | 19 | 20 | 20 | 22 | 22 | 23 |
| Padova | 1 | 1 | 2 | 4 | 6 | 6 | 8 | 10 | 10 | 11 | 12 | 14 | 14 | 15 | 15 | 16 | 16 | 16 | 16 | 18 | 19 | 21 | 21 | 23 | 25 | 25 | 25 | 26 | 28 | 30 |
| Prato | 0 | 0 | 0 | 2 | 2 | 3 | 5 | 5 | 5 | 5 | 6 | 6 | 6 | 6 | 7 | 9 | 9 | 10 | 10 | 10 | 10 | 12 | 14 | 14 | 14 | 16 | 17 | 17 | 19 | 19 |
| Pro Patria | 2 | 3 | 5 | 5 | 7 | 8 | 10 | 10 | 10 | 12 | 12 | 14 | 14 | 14 | 14 | 15 | 17 | 18 | 20 | 21 | 23 | 25 | 27 | 29 | 29 | 31 | 32 | 32 | 34 | 36 |
| Roma | 2 | 2 | 4 | 5 | 6 | 8 | 8 | 10 | 12 | 12 | 14 | 14 | 16 | 16 | 17 | 19 | 20 | 21 | 23 | 25 | 27 | 27 | 29 | 29 | 31 | 33 | 34 | 36 | 38 | 40 |
| Torino | 2 | 4 | 6 | 8 | 10 | 12 | 14 | 14 | 16 | 18 | 19 | 21 | 23 | 25 | 27 | 28 | 30 | 31 | 33 | 35 | 37 | 38 | 39 | 39 | 41 | 43 | 45 | 46 | 46 | 48 |
| Triestina | 0 | 2 | 2 | 3 | 3 | 5 | 5 | 5 | 7 | 7 | 8 | 8 | 10 | 10 | 11 | 13 | 15 | 16 | 16 | 18 | 19 | 19 | 21 | 21 | 23 | 23 | 25 | 25 | 27 | 29 |

## Girone B
### Squadre partecipanti

| Club | Stagione | Città | Stadio | Stagione precedente |
| Ambrosiana | dettagli | Milano | Campo Virgilio Fossati | Inter 7ª nel gir.finale della Div.Nazionale |
| Biellese | dettagli | Biella | Campo Sportivo Rivetti | 4º nel gir. B della 1ª Divisione |
| Bologna | dettagli | Bologna | Stadio del Littoriale | 5º nel gir.finale della Div.Nazionale |
| Brescia | dettagli | Brescia | Stadium di viale Piave | 5º nel gir.A della Div.Nazionale |
| Cremonese | dettagli | Cremona | Stadio Giovanni Zini | 7º nel gir.A della Div.Nazionale |
| Fiorentina | dettagli | Firenze | Stadio Velodromo Libertas | 2º nel gir.D della 1ª Divisione |
| Fiumana | dettagli | Fiume | Stadio Comunale del Littorio | 3º nel gir.A della 1ª Divisione |
| Genova 1893 | dettagli | Genova | Campo Sportivo Marassi | 2º nel gir.finale della Div.Nazionale |
| Juventus | dettagli | Torino | Stadio di Corso Marsiglia | 3º nel gir.finale della Div.Nazionale |
| Lazio | dettagli | Roma | Stadio della Rondinella | 10º nel gir.A della Div.Nazionale |
| Napoli | dettagli | Napoli | Stadio Militare dell'Arenaccia | 9º nel gir.A della Div.Nazionale |
| Pistoiese | dettagli | Pistoia | Campo Monteoliveto | 2º nel gir.C della 1ª Divisione |
| Pro Vercelli | dettagli | Vercelli | Campo piazza Conte di Torino | 6º nel gir.A della Div.Nazionale |
| Reggiana | dettagli | Reggio Emilia | Stadio Mirabello | 11º nel gir.A della Div.Nazionale |
| Venezia | dettagli | Venezia | C.S. fascista di Sant'Elena | 2º nel gir.A della 1ª Divisione |
| Verona | dettagli | Verona | Stadio Marcantonio Bentegodi | 11º nel gir.B della Div.Nazionale |

### Classifica finale

| Pos. | Squadra | Pt | G | V | N | P | GF | GS |
| 1. | Bologna | 49 | 30 | 22 | 5 | 3 | 84 | 32 |
| 2. | Juventus | 41 | 30 | 16 | 9 | 5 | 76 | 25 |
| 2. | Brescia | 41 | 30 | 18 | 5 | 7 | 67 | 35 |
| 4. | Genova 1893 | 39 | 30 | 17 | 5 | 8 | 71 | 35 |
| 5. | Pro Vercelli | 38 | 30 | 16 | 6 | 8 | 71 | 40 |
| 6. | Ambrosiana | 37 | 30 | 17 | 3 | 10 | 95 | 38 |
| 7. | Cremonese | 33 | 30 | 14 | 5 | 11 | 46 | 43 |
| 8. | Lazio | 29 | 30 | 13 | 3 | 14 | 47 | 39 |
| 8. | Napoli | 29 | 30 | 11 | 7 | 12 | 61 | 64 |
| 10. | Biellese | 27 | 30 | 11 | 5 | 14 | 34 | 56 |
| 11. | Venezia | 26 | 30 | 10 | 6 | 14 | 53 | 65 |
| 12. | Pistoiese | 25 | 30 | 9 | 7 | 14 | 36 | 65 |
| 12. | Verona | 25 | 30 | 10 | 5 | 15 | 32 | 73 |
| 14. | Fiumana | 16 | 30 | 4 | 8 | 18 | 32 | 73 |
| 15. | Reggiana | 13 | 30 | 3 | 7 | 20 | 51 | 103 |
| 16. | Fiorentina | 12 | 30 | 5 | 2 | 23 | 26 | 96 |
Legenda:
    Qualificata alle finali nazionali.
    Qualificata alla Coppa dell'Europa Centrale 1929.
Disputa Spareggio per permanenza in Prima Divisione
    Retrocesse in Serie B 1929-1930.
    Retrocesse in Prima Divisione 1929-1930.
Regolamento:
    Due punti per la vittoria, uno per il pareggio, nessuno per la sconfitta.
    Era in vigore il pari merito.
Note:
    La Lazio e il Napoli giunte a pari merito, inizialmente destinate allo spareggio per determinare chi dovesse retrocedere in Serie B, furono poi entrambe ammesse alla Serie A 1929-1930 per allargamento dei quadri.
    La Reggiana e la Fiorentina, inizialmente destinate a retrocedere in Prima Divisione 1929-1930, furono ammesse in Serie B 1929-1930 per allargamento dei quadri.
    La Juventus, il Genova e l'Ambrosiana furono iscritte alle qualificazioni per la Coppa dell'Europa Centrale 1929.

### Risultati
#### Tabellone

| | AMB | BIE | BOL | BRE | CRE | FIO | FIU | GEN | JUV | LAZ | NAP | PIS | PRO | REG | VEN | VER |
| Ambrosiana | –––– | 7-0 | 1-1 | 5-1 | 0-1 | 3-0 | 8-1 | 0-1 | 4-2 | 3-1 | 8-1 | 9-1 | 3-0 | 5-1 | 10-2 | 9-0 |
| Biellese | 2-1 | –––– | 1-1 | 0-2 | 2-1 | 3-1 | 1-0 | 2-1 | 1-3 | 2-0 | 3-2 | 1-0 | 1-2 | 3-0 | 2-1 | 3-0 |
| Bologna | 3-1 | 3-0 | –––– | 1-0 | 6-0 | 3-0 | 2-0 | 3-1 | 0-0 | 6-2 | 5-1 | 5-0 | 3-0 | 5-1 | 3-0 | 4-1 |
| Brescia | 0-0 | 1-0 | 10-0 | –––– | 0-0 | 5-0 | 3-2 | 5-0 | 1-1 | 4-2 | 2-0 | 3-0 | 0-0 | 5-1 | 3-1 | 2-1 |
| Cremonese | 0-2 | 3-1 | 0-2 | 2-1 | –––– | 6-0 | 4-1 | 3-2 | 0-0 | 4-2 | 5-1 | 1-0 | 0-2 | 3-0 | 2-1 | 1-0 |
| Fiorentina | 0-3 | 2-0 | 2-3 | 2-3 | 2-1 | –––– | 3-0 | 1-2 | 0-4 | 0-4 | 1-1 | 0-1 | 0-1 | 2-0 | 0-2 | 1-1 |
| Fiumana | 1-2 | 2-1 | 0-2 | 0-2 | 1-1 | 4-2 | –––– | 0-0 | 1-3 | 0-2 | 1-1 | 2-2 | 2-2 | 4-0 | 1-1 | 2-1 |
| Genova 1893 | 6-1 | 5-0 | 3-0 | 1-1 | 2-0 | 7-0 | 4-2 | –––– | 3-3 | 1-0 | 2-1 | 2-1 | 2-0 | 2-2 | 1-0 | 11-0 |
| Juventus | 0-0 | 0-0 | 1-1 | 0-1 | 3-0 | 11-0 | 11-0 | 2-0 | –––– | 0-1 | 3-1 | 4-0 | 1-3 | 2-0 | 4-0 | 4-0 |
| Lazio | 1-0 | 2-0 | 0-1 | 0-1 | 3-0 | 5-1 | 2-0 | 0-2 | 1-2 | –––– | 0-0 | 4-0 | 1-1 | 4-0 | 1-0 | 3-0 |
| Napoli | 4-1 | 5-0 | 0-4 | 4-0 | 1-1 | 7-2 | 2-1 | 1-2 | 1-0 | 1-2 | –––– | 4-1 | 3-3 | 6-2 | 4-1 | 3-0 |
| Pistoiese | 1-0 | 1-1 | 0-0 | 2-3 | 2-0 | 2-0 | 1-1 | 1-0 | 0-4 | 2-1 | 0-1 | –––– | 2-1 | 8-2 | 3-1 | 1-1 |
| Pro Vercelli | 4-1 | 5-1 | 2-0 | 3-0 | 2-1 | 5-0 | 4-1 | 1-1 | 3-4 | 3-1 | 4-1 | 9-0 | –––– | 4-0 | 3-0 | 1-1 |
| Reggiana | 1-4 | 2-2 | 3-9 | 1-4 | 3-4 | 2-3 | 1-1 | 2-1 | 2-2 | 1-1 | 8-2 | 2-2 | 3-1 | –––– | 4-5 | 3-4 |
| Venezia | 1-4 | 3-1 | 1-2 | 3-2 | 1-1 | 3-1 | 3-1 | 3-1 | 1-1 | 2-0 | 2-2 | 1-1 | 5-2 | 2-3 | –––– | 5-0 |
| Verona | 1-0 | 0-0 | 1-6 | 3-2 | 0-1 | 4-0 | 2-0 | 0-5 | 0-1 | 2-1 | 0-0 | 2-1 | 2-1 | 3-1 | 2-1 | –––– |

#### Calendario

| andata (1ª) | andata (1ª) | Prima giornata | ritorno (16ª) | ritorno (16ª) |
| 30 set. | 6-2 | Bologna-Lazio | 1-0 | 3 feb. |
| 30 set. | 3-2 | Brescia-Fiumana | 2-0 | 3 feb. |
| 30 set. | 2-1 | Cremonese-Venezia | 1-1 | 3 feb. |
| 30 set. | 0-3 | Fiorentina-Ambrosiana | 0-3 | 3 feb. |
| 30 set. | 2-1 | Genova 1893-Pistoiese | 0-1 | 3 feb. |
| 30 set. | 3-0 | Napoli-Verona | 0-0 | 3 feb. |
| 30 set. | 5-1 | Pro Vercelli-Biellese | 2-1 | 3 feb. |
| 30 set. | 2-2 | Reggiana-Juventus | 0-2 | 3 feb. |
| andata (2ª) | andata (2ª) | Seconda giornata | ritorno (17ª) | ritorno (17ª) |
| 7 ott. | 5-1 | Ambrosiana-Reggiana | 4-1 | 10 feb. |
| 7 ott. | 2-1 | Biellese-Cremonese | 1-3 | 10 feb. |
| 7 ott. | 4-2 | Genova 1893-Fiumana | 0-0 | 10 feb. |
| 7 ott. | 11-0 | Juventus-Fiorentina | 4-0 | 10 feb. |
| 7 ott. | 0-1 | Lazio-Brescia | 2-4 | 10 feb. |
| 7 ott. | 0-1 | Pistoiese-Napoli | 1-4 | 10 feb. |
| 7 ott. | 1-2 | Venezia-Bologna | 0-3 | 10 feb. |
| 7 ott. | 2-1 | Verona-Pro Vercelli | 1-1 | 10 feb. |
| andata (3ª) | andata (3ª) | Terza giornata | ritorno (18ª) | ritorno (18ª) |
| 21 ott. | 5-1 | Bologna-Reggiana | 9-3 | 17 feb. |
| 21 ott. | 2-0 | Brescia-Napoli | 0-4 | 17 feb. |
| 21 ott. | 4-2 | Cremonese-Lazio | 0-3 | 17 feb. |
| 21 ott. | 1-2 | Fiorentina-Genova 1893 | 0-7 | 17 feb. |
| 21 ott. | 2-1 | Fiumana-Biellese | 0-1 | 17 feb. |
| 21 ott. | 3-1 | Pistoiese-Venezia | 1-1 | 17 feb. |
| 21 ott. | 4-1 | Pro Vercelli-Ambrosiana | 0-3 | 17 feb. |
| 21 ott. | 0-1 | Verona-Juventus | 0-4 | 17 feb. |
| andata (4ª) | andata (4ª) | Quarta giornata | ritorno (19ª) | ritorno (19ª) |
| 28 ott. | 5-1 | Ambrosiana-Brescia | 0-0 | 24 feb. |
| 28 ott. | 1-1 | Biellese-Bologna | 0-3 | 24 feb. |
| 28 ott. | 11-0 | Genova 1893-Verona | 5-0 | 24 feb. |
| 28 ott. | 4-0 | Juventus-Pistoiese | 4-0 | 24 feb. |
| 28 ott. | 1-1 | Lazio-Pro Vercelli | 1-3 | 24 feb. |
| 28 ott. | 7-2 | Napoli-Fiorentina | 1-1 | 24 feb. |
| 28 ott. | 3-4 | Reggiana-Cremonese | 0-3 | 24 feb. |
| 28 ott. | 3-1 | Venezia-Fiumana | 1-1 | 24 feb. |
| andata (5ª) | andata (5ª) | Quinta giornata | ritorno (20ª) | ritorno (20ª) |
| 1º nov. | 5-1 | Bologna-Napoli | 4-0 | 17 mar. |
| 1º nov. | 0-0 | Brescia-Cremonese | 1-2 | 17 mar. |
| 1º nov. | 0-4 | Fiorentina-Lazio | 1-5 | 17 mar. |
| 1º nov. | 4-0 | Fiumana-Reggiana | 1-1 | 17 mar. |
| 1º nov. | 3-3 | Genova 1893-Juventus | 0-2 | 17 mar. |
| 1º nov. | 1-1 | Pistoiese-Biellese | 0-1 | 17 mar. |
| 1º nov. | 5-2 | Venezia-Pro Vercelli | 0-3 | 17 mar. |
| 1º nov. | 1-0 | Verona-Ambrosiana | 0-9 | 17 mar. |
| andata (6ª) | andata (6ª) | Sesta giornata | ritorno (21ª) | ritorno (21ª) |
| 4 nov. | 1-1 | Ambrosiana-Bologna | 1-3 | 31 mar. |
| 4 nov. | 3-0 | Biellese-Verona | 0-0 | 31 mar. |
| 4 nov. | 0-2 | Fiorentina-Venezia | 1-3 | 31 mar. |
| 4 nov. | 11-0 | Juventus-Fiumana | 3-1 | 31 mar. |
| 4 nov. | 4-0 | Lazio-Pistoiese | 1-2 | 31 mar. |
| 4 nov. | 1-1 | Napoli-Cremonese | 1-5 | 31 mar. |
| 4 nov. | 1-1 | Pro Vercelli-Genova 1893 | 0-2 | 31 mar. |
| 4 nov. | 1-4 | Reggiana-Brescia | 1-5 | 31 mar. |
| andata (7ª) | andata (7ª) | Settima giornata | ritorno (22ª) | ritorno (22ª) |
| 18 nov. | 0-0 | Bologna-Juventus | 1-1 | 14 apr. |
| 18 nov. | 1-0 | Brescia-Biellese | 2-0 | 14 apr. |
| 18 nov. | 3-2 | Cremonese-Genova 1893 | 0-2 | 14 apr. |
| 18 nov. | 1-2 | Fiumana-Ambrosiana | 1-8 | 14 apr. |
| 18 nov. | 2-1 | Pistoiese-Pro Vercelli | 0-9 | 14 apr. |
| 18 nov. | 2-3 | Reggiana-Fiorentina | 0-2 | 14 apr. |
| 18 nov. | 2-2 | Venezia-Napoli | 1-4 | 14 apr. |
| 18 nov. | 2-1 | Verona-Lazio | 0-3 | 14 apr. |
| andata (8ª) | andata (8ª) | Ottava giornata | ritorno (23ª) | ritorno (23ª) |
| 25 nov. | 2-3 | Fiorentina-Bologna | 0-3 | 21 apr. |
| 25 nov. | 2-1 | Fiumana-Verona | 0-2 | 21 apr. |
| 25 nov. | 0-0 | Juventus-Ambrosiana | 2-4 | 21 apr. |
| 25 nov. | 2-0 | Lazio-Biellese | 0-2 | 21 apr. |
| 25 nov. | 1-2 | Napoli-Genova 1893 | 1-2 | 21 apr. |
| 25 nov. | 2-0 | Pistoiese-Cremonese | 0-1 | 21 apr. |
| 25 nov. | 3-0 | Pro Vercelli-Brescia | 0-0 | 21 apr. |
| 25 nov. | 3-3 | Venezia-Reggiana | 5-4 | 21 apr. |
| andata (9ª) | andata (9ª) | Nona giornata | ritorno (24ª) | ritorno (24ª) |
| 9 dic. | 3-1 | Ambrosiana-Lazio | 0-1 | 5 mag. |
| 9 dic. | 3-1 | Biellese-Fiorentina | 0-2 | 5 mag. |
| 9 dic. | 5-0 | Bologna-Pistoiese | 0-0 | 5 mag. |
| 9 dic. | 4-1 | Cremonese-Fiumana | 1-1 | 5 mag. |
| 9 dic. | 2-2 | Genova 1893-Reggiana | 1-2 | 5 mag. |
| 9 dic. | 0-1 | Juventus-Brescia | 1-1 | 5 mag. |
| 9 dic. | 3-3 | Napoli-Pro Vercelli | 1-4 | 5 mag. |
| 9 dic. | 2-1 | Verona-Venezia | 0-5 | 5 mag. |
| andata (10ª) | andata (10ª) | Decima giornata | ritorno (25ª) | ritorno (25ª) |
| 16 dic. | 2-1 | Biellese-Genova 1893 | 0-5 | 12 mag. |
| 16 dic. | 2-1 | Brescia-Verona | 2-3 | 12 mag. |
| 16 dic. | 0-2 | Cremonese-Bologna | 0-6 | 12 mag. |
| 16 dic. | 0-1 | Fiorentina-Pistoiese | 0-2 | 28 mag. |
| 16 dic. | 2-0 | Lazio-Fiumana | 2-0 | 12 mag. |
| 16 dic. | 3-4 | Pro Vercelli-Juventus | 3-1 | 12 mag. |
| 16 dic. | 8-2 | Reggiana-Napoli | 2-6 | 12 mag. |
| 16 dic. | 1-4 | Venezia-Ambrosiana | 2-10 | 12 mag. |
| andata (11ª) | andata (11ª) | Undicesima giornata | ritorno (26ª) | ritorno (26ª) |
| 23 dic. | 3-0 | Bologna-Pro Vercelli | 0-2 | 19 mag. |
| 23 dic. | 4-2 | Fiumana-Fiorentina | 0-3 | 19 mag. |
| 23 dic. | 6-1 | Genova 1893-Ambrosiana | 1-0 | 19 mag. |
| 23 dic. | 3-1 | Juventus-Napoli | 0-1 | 19 mag. |
| 23 dic. | 2-3 | Pistoiese-Brescia | 0-3 | 19 mag. |
| 23 dic. | 2-2 | Reggiana-Biellese | 0-3 | 19 mag. |
| 23 dic. | 2-0 | Venezia-Lazio | 0-1 | 19 mag. |
| 23 dic. | 0-1 | Verona-Cremonese | 0-1 | 19 mag. |
| andata (12ª) | andata (12ª) | Dodicesima giornata | ritorno (27ª) | ritorno (27ª) |
| 6 gen. | 9-1 | Ambrosiana-Pistoiese | 0-1 | 26 mag. |
| 6 gen. | 1-3 | Biellese-Juventus | 0-0 | 26 mag. |
| 6 gen. | 3-1 | Brescia-Venezia | 2-3 | 26 mag. |
| 6 gen. | 2-1 | Fiorentina-Cremonese | 0-6 | 26 mag. |
| 6 gen. | 0-2 | Lazio-Genova 1893 | 0-1 | 26 mag. |
| 6 gen. | 2-1 | Napoli-Fiumana | 1-1 | 26 mag. |
| 6 gen. | 4-0 | Pro Vercelli-Reggiana | 0-3 | 26 mag. |
| 6 gen. | 1-6 | Verona-Bologna | 1-4 | 26 mag. |
| andata (13ª) | andata (13ª) | Tredicesima giornata | ritorno (28ª) | ritorno (28ª) |
| 13 gen. | 3-2 | Biellese-Napoli | 0-5 | 2 giu. |
| 13 gen. | 3-1 | Bologna-Genova 1893 | 0-3 | 2 giu. |
| 13 gen. | 5-0 | Brescia-Fiorentina | 3-2 | 2 giu. |
| 13 gen. | 0-2 | Cremonese-Ambrosiana | 1-0 | 2 giu. |
| 13 gen. | 2-2 | Fiumana-Pro Vercelli | 1-4 | 2 giu. |
| 13 gen. | 4-0 | Juventus-Venezia | 1-1 | 2 giu. |
| 13 gen. | 1-1 | Pistoiese-Verona | 1-2 | 2 giu. |
| 13 gen. | 1-1 | Reggiana-Lazio | 0-4 | 2 giu. |
| andata (14ª) | andata (14ª) | Quattordicesima giornata | ritorno (29ª) | ritorno (29ª) |
| 20 gen. | 8-1 | Ambrosiana-Napoli | 1-4 | 9 giu. |
| 20 gen. | 1-1 | Fiorentina-Verona | 0-4 | 9 giu. |
| 20 gen. | 0-2 | Fiumana-Bologna | 0-2 | 9 giu. |
| 20 gen. | 1-1 | Genova 1893-Brescia | 0-5 | 9 giu. |
| 20 gen. | 1-2 | Lazio-Juventus | 1-0 | 9 giu. |
| 20 gen. | 2-1 | Pro Vercelli-Cremonese | 2-0 | 9 giu. |
| 20 gen. | 2-2 | Reggiana-Pistoiese | 2-8 | 9 giu. |
| 20 gen. | 3-1 | Venezia-Biellese | 1-2 | 9 giu. |
| andata (15ª) | andata (15ª) | Quindicesima giornata | ritorno (30ª) | ritorno (30ª) |
| 27 gen. | 7-0 | Ambrosiana-Biellese | 1-2 | 16 giu. |
| 19 mar. | 1-0 | Bologna-Brescia | 0-10 | 16 giu. |
| 27 gen. | 1-0 | Genova 1893-Venezia | 1-3 | 16 giu. |
| 27 gen. | 3-0 | Juventus-Cremonese | 0-0 | 29 giu. |
| 27 gen. | 1-2 | Napoli-Lazio | 0-0 | 16 giu. |
| 27 gen. | 1-1 | Pistoiese-Fiumana | 2-2 | 16 giu. |
| 27 gen. | 5-0 | Pro Vercelli-Fiorentina | 1-0 | 16 giu. |
| 10 mar. | 3-1 | Verona-Reggiana | 4-3 | 16 giu. |

### Statistiche
#### Squadre
##### Classifica in divenire

| | 1ª | 2ª | 3ª | 4ª | 5ª | 6ª | 7ª | 8ª | 9ª | 10ª | 11ª | 12ª | 13ª | 14ª | 15ª | 16ª | 17ª | 18ª | 19ª | 20ª | 21ª | 22ª | 23ª | 24ª | 25ª | 26ª | 27ª | 28ª | 29ª | 30ª |
| Ambrosiana | 2 | 4 | 4 | 6 | 6 | 7 | 9 | 10 | 12 | 14 | 14 | 16 | 18 | 20 | 22 | 24 | 26 | 28 | 29 | 31 | 31 | 33 | 35 | 35 | 37 | 37 | 37 | 37 | 37 | 37 |
| Biellese | 0 | 2 | 2 | 3 | 4 | 6 | 6 | 6 | 8 | 10 | 11 | 11 | 13 | 13 | 13 | 13 | 13 | 15 | 15 | 17 | 18 | 18 | 20 | 20 | 20 | 22 | 23 | 23 | 25 | 27 |
| Bologna | 2 | 4 | 6 | 7 | 9 | 10 | 11 | 13 | 15 | 17 | 19 | 21 | 23 | 25 | 27 | 29 | 31 | 33 | 35 | 37 | 39 | 40 | 42 | 43 | 45 | 45 | 47 | 47 | 49 | 49 |
| Brescia | 2 | 4 | 6 | 6 | 7 | 9 | 11 | 11 | 13 | 15 | 17 | 19 | 21 | 22 | 22 | 24 | 26 | 26 | 27 | 27 | 29 | 31 | 32 | 33 | 33 | 35 | 35 | 37 | 39 | 41 |
| Cremonese | 2 | 2 | 4 | 6 | 7 | 8 | 10 | 10 | 12 | 12 | 14 | 14 | 14 | 14 | 14 | 15 | 17 | 17 | 19 | 21 | 23 | 23 | 25 | 26 | 26 | 28 | 30 | 32 | 32 | 33 |
| Fiorentina | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 2 | 2 | 2 | 2 | 4 | 4 | 5 | 5 | 5 | 5 | 5 | 6 | 6 | 6 | 8 | 8 | 10 | 10 | 12 | 12 | 12 | 12 | 12 |
| Fiumana | 0 | 0 | 2 | 2 | 4 | 4 | 4 | 6 | 6 | 6 | 8 | 8 | 9 | 9 | 10 | 10 | 11 | 11 | 12 | 13 | 13 | 13 | 13 | 14 | 14 | 14 | 15 | 15 | 15 | 16 |
| Genova | 2 | 4 | 6 | 8 | 9 | 10 | 10 | 12 | 13 | 13 | 15 | 17 | 17 | 18 | 20 | 20 | 21 | 23 | 25 | 25 | 27 | 29 | 31 | 31 | 33 | 35 | 37 | 39 | 39 | 39 |
| Juventus | 1 | 3 | 5 | 7 | 8 | 10 | 11 | 12 | 12 | 14 | 16 | 18 | 20 | 22 | 24 | 26 | 28 | 30 | 32 | 34 | 36 | 37 | 37 | 38 | 38 | 38 | 39 | 40 | 40 | 41 |
| Lazio | 0 | 0 | 0 | 1 | 3 | 5 | 5 | 7 | 7 | 9 | 9 | 9 | 10 | 10 | 12 | 12 | 12 | 14 | 14 | 16 | 16 | 18 | 18 | 20 | 22 | 24 | 24 | 26 | 28 | 29 |
| Napoli | 2 | 4 | 4 | 6 | 6 | 7 | 8 | 8 | 9 | 9 | 9 | 11 | 11 | 11 | 11 | 12 | 14 | 16 | 17 | 17 | 17 | 19 | 19 | 19 | 21 | 23 | 24 | 26 | 28 | 29 |
| Pistoiese | 0 | 0 | 2 | 2 | 3 | 3 | 5 | 7 | 7 | 9 | 9 | 9 | 10 | 11 | 12 | 14 | 14 | 15 | 15 | 15 | 17 | 17 | 17 | 18 | 20 | 20 | 22 | 22 | 24 | 25 |
| Pro Vercelli | 2 | 2 | 4 | 5 | 5 | 6 | 6 | 8 | 9 | 9 | 9 | 11 | 13 | 14 | 16 | 18 | 19 | 19 | 21 | 23 | 23 | 25 | 27 | 28 | 30 | 32 | 32 | 34 | 36 | 38 |
| Reggiana | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 2 | 3 | 5 | 6 | 6 | 7 | 8 | 8 | 8 | 8 | 8 | 8 | 9 | 9 | 9 | 9 | 11 | 11 | 11 | 13 | 13 | 13 | 13 |
| Venezia | 0 | 0 | 0 | 2 | 4 | 6 | 7 | 8 | 8 | 8 | 10 | 10 | 10 | 12 | 12 | 13 | 13 | 14 | 15 | 15 | 17 | 17 | 19 | 21 | 21 | 21 | 23 | 24 | 24 | 26 |
| Verona | 0 | 2 | 2 | 2 | 4 | 4 | 6 | 6 | 8 | 8 | 8 | 8 | 9 | 10 | 12 | 13 | 14 | 14 | 14 | 14 | 15 | 15 | 17 | 17 | 19 | 19 | 19 | 21 | 23 | 25 |

## Qualificazioni alla Coppa dell'Europa Centrale

L'Italia fu invitata ad aderire alla Coppa dell'Europa Centrale, giunta alla sua terza edizione, ma le lungaggini organizzative del campionato avrebbero sovrapposto le finali col primo turno della coppa. La FIGC pensò dunque di iscrivere d'ufficio, a torneo non ancora concluso, le probabili seconde classificate, peraltro le quotate Juventus e Milan; ma per evitare accuse di favoritismo decise di far loro giocare un turno qualificatorio ad hoc contro le altre due squadre metropolitane più blasonate del tempo, Inter e Genoa, in modo da avere una forte rappresentanza italiana all'esordio nella coppa.
| | Risultati | | Luogo e data |
| Juventus | 1-0 | Ambrosiana | Torino, 30 maggio 1929 |
| | Risultati | | Luogo e data |
| Milan | 2-2 | Genova 1893 | Milano, 30 maggio 1929 |
| Genova 1893 | 1-1 | Milan | Genova, 12 giugno 1929 |

## Spareggi
### Qualificazione alla Serie A (non omologata)

| | Risultati | | Luogo e data |
| Lazio | 2-2 (dts) | Napoli | Milano, 23 giugno 1929 |
Malgrado il risultato di parità, lo spareggio non fu ripetuto in seguito alla decisione della FIGC di allargare il numero delle squadre ammesse alla Serie A, permettendo a Lazio e Napoli di partecipare alla massima serie in modo da ottenere una più ampia rappresentanza dell’Italia centro-meridionale.

## Finali nazionali
### Verdetto

* Bologna campione d'Italia 1928-1929

### Squadra campione

* Mario Gianni
* Eraldo Monzeglio
* Felice Gasperi
* Pietro Genovesi
* Gastone Baldi
* Alfredo Pitto
* Federico Busini I
* Giuseppe Della Valle III
* Angelo Schiavio
* Antonio Busini III
* Giuseppe Muzzioli
* Allenatore: Hermann Felsner

### Statistiche
#### Individuali
##### Classifica marcatori

Durante il campionato fu messa a segno una quadripletta da Attila Sallustro nella partita Napoli-Reggiana 6-2.
| Gol | Giocatore | Squadra |
| 36 | Gino Rossetti | Torino |
| 33 | Giuseppe Meazza | Ambrosiana |
| 30 | Angelo Schiavio | Bologna |