Si procurò larga fama distinguendosi in battaglia, specie nella guerra del Marocco (1859 - 1860), comandando l'esercito spagnolo durante la battaglia di Tétouan, fatto che gli valse la nomina a duca.
Entrò in politica dal 1854, quando guidò il pronunciamiento contro il governo San Luis; per questo O'Donnell fu nominato ministro della guerra nel governo Espartero. Divenuto leader dell'Unione liberale, entrò in contrasto con Espartero e venne posto alla guida di un nuovo governo (luglio-ottobre 1856).
Richiamato al governo nel 1858, O'Donnell s'avvicinò alla Chiesa: dovette dimettersi nel 1861, in seguito alla decisione di intervenire a fianco alla Francia nella guerra contro il Messico, che suscitò l'opposizione sia dei reazionari che dei liberali.
In seguito tornò alla guida del governo, ma vi rimase solo un anno (1865-1866), a causa della sanguinosa repressione dei sergenti di San Gil (dove, per suo ordine, furono fucilati 66 militari), che gli alienò il favore dell'opinione pubblica e gli costò la scomparsa dalla scena politica. Morì il 5 novembre 1867, a soli 58 anni.
Ebbe i titoli di I duca di Tetuán, I conte di Lucena e I visconte di Aliaga.