Billy” The Great ” Hope (Jake Gyllenhaal) è un pugile professionista imbattuto che vive nei sobborghi di New York City con sua moglie Maureen (Rachel McAdams) e la loro figlia solidale Leila (Oona Laurence). Durante il suo match contro Darius Jones (Cedric D. Jones) al Madison Square Garden, Maureen si spaventa mentre Billy prende diversi colpi orribili in faccia, con conseguente sanguinamento copioso dall’occhio sinistro. Billy poi impiega uno stile di combattimento brutale e veloce contro Jones, permettendogli di vincere il match per knockout e mantenere l’indiscusso titolo WBA/IBF/WBC/WBO dei pesi massimi leggeri. Nonostante la vittoria, subisce brutte ferite e sanguinamenti continui.
In seguito, mentre la stampa circonda Billy, un giovane pugile upstart, Miguel “Magic” Escobar (Miguel Gomez), entra e chiede a Billy di combatterlo sul ring, sostenendo che Billy non è mai stato colpito da un vero uomo. Al ritorno a casa, Maureen esprime le sue paure per la sicurezza di Billy e lo esorta a smettere mentre è avanti o diventerà un alcolizzato solitario in due anni. Durante una festa in casa alla Hope house, Maureen parla con il manager di Billy Jordan Mains (50 Cent), e non è d’accordo con il suo piano per convincere Billy a firmare un accordo di due anni con la HBO per altri tre combattimenti.
Billy e Maureen vanno a un ballo di raccolta fondi dove Billy tiene un discorso, riconoscendo Maureen, Leila, Jordan e i suoi amici Gabe, Jon Jon, Eli e Mikey. Miguel è presente pure, e come Billy sta lasciando, Miguel lo pungola sessualmente insultando Maureen e dicendo che porterà via i suoi titoli da lui. Maureen dice a Billy di lasciarlo andare, ma la rabbia di Billy ha la meglio su di lui, portando a una rissa. Uno degli amici di Billy, Gabe (Malcom Mays) tira fuori una pistola, ma un colpo risuona senza che lui premi il grilletto. Billy guarda oltre e vede che Maureen è stato colpito. Miguel, vedendo che è stato suo fratello Hector a sparare il colpo, nasconde la pistola mentre Hector fugge mentre Maureen muore tra le braccia di Billy.
Billy inizia ad abusare di alcol e droghe mentre cerca ossessivamente Hector. L’amico di Billy Jon Jon (Beau Knapp) va a cercare di fermarlo, solo per essere minacciato da lui sotto tiro e incolpato per la morte di Maureen. Billy alla fine ottiene una soffiata su dove si trova Hector, ma trova solo la moglie tossicodipendente di Hector, Maria, e se ne va dopo aver appreso che Hector è un padre. Billy incontra Jordan, che suggerisce di vendere la casa per risolvere i suoi problemi finanziari. Jordan poi libri Billy una lotta contro Kalil Turay. Durante il combattimento, Billy viene picchiato così male che il suo angolo getta la spugna, ponendo fine al combattimento. Accecato dai danni causati da colpi alla testa, Billy colpisce accidentalmente l’arbitro in faccia. Billy è sospeso per un anno, lasciandolo senza reddito e danni di pagamento al ref. Inoltre, le reti lo citano in giudizio per violazione del contratto, lasciandolo in debito e la sua casa e gli effetti personali di essere recuperato. Con Billy fuori combattimento, il suo allenatore di lunga data Eli Frost insieme a Jordan lo abbandonano per lavorare con Miguel.
Billy continua a spirale fuori controllo e alla fine corre la sua auto contro l’albero fuori casa sua una notte. L’allarme sveglia Leila, e lei scende di sotto per trovare un Billy sanguinante sdraiato sul pavimento, e poi chiama il 911. Billy si sveglia in ospedale per sentirsi dire che Leila è stata affidata alle cure dell’agente dei Servizi di protezione dei bambini Angela Rivera (Naomi Harris) poiché è ritenuto inadatto a prendersi cura di lei a causa del suo comportamento sconsiderato. Con nessun posto dove andare, un perdonatore Jon guida Billy alla palestra Wills dove incontra l’ex pugile Tick Wills (Forest Whitaker), che è cieco da un occhio dopo che il suo ultimo combattimento lo ha lasciato ferito. Billy vuole Tick per farlo tornare in piedi, ma Tick conosce i suoi problemi di bere e l’uso di droghe ed è titubante per addestrarlo. Offre a Billy un lavoro da bidello, ma Billy rifiuta.
Billy va all’edificio dei servizi per l’infanzia e incontra Angela. Ammette di essere un disastro, ma vuole ancora vedere Leila. Tuttavia, Leila lo incolpa per aver causato entrambi i loro problemi e si rifiuta di vederlo. Billy torna in palestra e accetta il lavoro di bidello. Mentre lavora lì, fa amicizia con un ragazzo di nome Hoppy (Skylan Brooks), che è anche un aspirante pugile. Scopre che il padre di Hoppy abusa di sua madre, che riferisce a Tick, con la quale continua a legare. Mentre continua a fare ammenda nella sua vita, Billy cerca di visitare Leila, che è ancora riluttante a vederlo, ma la sua persistenza la conquista. Billy visita di nuovo Leila per parlarle della sua prossima esibizione. Poiché le è stato ordinato di non partecipare ai suoi combattimenti dal giudice, lei lo colpisce ripetutamente, incolpandolo per la morte di Maureen. Dopo aver partecipato e vinto una partita di beneficenza contro il giovane pugile Keith “Buzzsaw” Brady, Billy viene visitato da Jordan, che ora gestisce Miguel che ha recentemente vinto il WBC Light Heavyweight Championship da Khalil Turay. Jordan vuole prenotare una lotta tra i due uomini entro sei settimane, sapendo che Billy non avrà abbastanza tempo per allenarsi. Billy pensa di poter fare un ritorno e vuole Tick per addestrarlo, ma Tick rifiuta, credendo Billy vuole solo vendetta.
Billy torna in palestra per trovare Tick che colpisce furiosamente un sacco da boxe, dopo aver scoperto che Hoppy è morto dopo aver cercato di difendere sua madre da suo padre, che poi gli ha sparato. Lamentando come non sia riuscito a salvare Hoppy, Tick si alza e aiuta Billy ad allenarsi e tornare in forma per l’imminente combattimento. Notando i suoi sforzi per cambiare la sua vita, il giudice concede Billy custodia di Leila e lei si trasferisce di nuovo con lui. Dopo aver visitato la tomba di Maureen su richiesta di Leila, Billy dice a Leila che sta per combattere di nuovo, e concede il suo desiderio di lasciarla vederlo combattere.
Arriva la notte del combattimento, con migliaia di persone pronte a vedere il ritorno di Billy. Angela porta Leila nello spogliatoio dove guardano la lotta in TV. La lotta inizia, e Miguel prende il sopravvento, abbattendo Billy due volte. Entrambi i combattenti commerciano pugni furiosi, andando di pari passo attraverso ogni round. Miguel poi entra nella testa di Billy insultando Maureen. Questo fa sì che Billy a perdere la concentrazione e in un impeto di rabbia, si scaglia contro di lui e quasi ferma la lotta. Tick poi dice a Billy di non lasciare che Miguel lo controlli, poiché sia sua moglie che sua figlia lo stanno guardando. Billy entra nel round finale, avendo finalmente imparato a controllare la sua rabbia, e inizia ad avere il sopravvento contro Miguel. Entrambi i combattenti continuano a stancarsi, prima che negli ultimi secondi dell’ultimo round, Billy blocchi un jab da Miguel, atterra un colpo in faccia prima di girare southpaw e atterrare un uppercut furioso, causando Miguel a schiantarsi a terra. La folla si scatena e spunta e la squadra corre sul ring per festeggiare con Billy.
Dopo una decisione divisa in cui i primi round vanno a Miguel, i giudici annunciano Billy come nuovo campione. Billy poi crolla in un angolo del ring, ringraziando Maureen e, infine, di essere pronto ad essere un padre impegnato a Leila. Tick poi lo solleva sulle spalle mentre chiude gli occhi in lacrime e sorride. Dopo il combattimento, Leila incontra Billy nello spogliatoio, dove si abbracciano per la prima volta dalla morte di Maureen. Billy dice Maureen sarebbe orgoglioso di lei e lei gli dice che lo ama mentre continuano ad abbracciare.