In one of the most enthralling encounters of the season, Cardiff City produced a dramatic late winner to put Doncaster to the sword. The victory, sealed by Joel Bagan’s dramatic 99th-minute strike, proved to be the defining moment in a match that oscillated between periods of brilliant attacking football and defensive fragility from both sides. With this hard-fought win, the Bluebirds extended their winning streak to five consecutive league matches and maintained their four-point lead at the top of League One.
A Fast-Paced First Half
The match began with Doncaster Rovers immediately on the front foot, and their early pressure bore fruit within the opening quarter-hour. Captain Owen Bailey fired the visitors into a 15th-minute lead when he calmly converted from close range after receiving a low cross from Luke Molyneux on the right wing. What appeared to be a straightforward finish for Bailey took a fortuitous deflection off Ryan Wintle, but the Doncaster skipper made no mistake in burying the ball past Nathan Trott.
Cardiff’s response was characteristically assertive. Just ten minutes later, Chelsea loanee Omari Kellyman levelled the score with a well-taken volley that showcased the young forward’s technical quality. The equaliser arrived after Isaak Davies robustly beat his marker down the left wing and picked out Kellyman in the penalty area, who took a touch before firing his effort past Doncaster goalkeeper Thimothee Lo-Tutala.
The hosts seized the momentum following Kellyman’s goal, and their dominance was rewarded in the 34th minute when Cian Ashford produced a moment of individual brilliance that will likely feature in the season’s highlight reels. Collecting the ball approximately 40 yards from goal, the winger drove purposefully at the Doncaster defence, holding off two defenders with composed skill before coolly slotting his effort into the corner of the net. For the first time, Cardiff held the advantage.
However, their lead lasted just eight minutes. Brandon Hanlan’s clinical finishing restored parity as he latched onto a precisely weighted through ball from Charlie Crew and dispatched his effort into the far corner with composure. At half-time, the scoreline read 2-2, a fair reflection of an entertaining first 45 minutes in which both teams demonstrated genuine quality in the attacking third.
Omari's second goal in City colours 💙#CityAsOne | @Omarikellyman pic.twitter.com/rpSheOF0Sv
— Cardiff City FC (@CardiffCityFC) December 14, 2025
BBM's Changes
Manager Brian Barry-Murphy made three substitutes at the interval, introducing Perry Ng, Chris Willock, and Dylan Lawlor in place of Ronan Kpakio, Isaak Davies, and Will Fish respectively. These changes would prove instrumental in altering the complexion of the contest.
The Bluebirds emerged with renewed energy and regained their lead in the 50th minute when Yousef Salech pounced to score his 10th league goal of the season. Latching onto a Ryan Wintle cross that had been floated into the box beyond Doncaster’s defensive line, the Danish striker showed his typical striker instincts to convert from close range.
Doncaster refused to surrender, and Brandon Hanlan proceeded to waste two excellent opportunities to restore parity shortly after the hour mark. First, he rose highest at the far post following a defensive lapse but saw his header sail over the crossbar. In the next phase of play, he found himself clear on goal again, but Nathan Trott proved equal to the challenge, producing a vital save to tip his effort over the bar.
The respite proved temporary. In the 72nd minute, Harry Clifton levelled the score once more when he showed excellent movement to reach Owen Bailey’s knocked-down header first and fire past Trott. At 3-3, the contest had reached a critical juncture, with everything to play for.
SCORING ALL THE TIME!!! (3-2)#CityAsOne pic.twitter.com/D1FN3RmOEG
— Cardiff City FC (@CardiffCityFC) December 13, 2025
Bagan’s Moment of Glory
As the match approached its conclusion, both sides searched desperately for a winner. Perry Ng sent a dangerous ball across the six-yard box that Doncaster managed to clear, while Chris Willock struck an effort from deep in stoppage time that drifted agonisingly wide of the far post. The fixture appeared destined for a draw, and few could have anticipated the extraordinary final few minutes that was about to unfold.
Deep in the ninth minute of added time, with the Cardiff City Stadium holding its collective breath, Cian Ashford powered forward and his rebounded effort fell kindly into the path of Joel Bagan. Finishing from an impossibly tight angle, Bagan swept the ball into the net and sent the home crowd into raptures. His 99th-minute strike secured victory in the most dramatic fashion imaginable and proved to be the difference between a point apiece and three crucial points.
The winner 👊#CityAsOne | @joelbagan pic.twitter.com/N0KWuwalt5
— Cardiff City FC (@CardiffCityFC) December 14, 2025
What's Next?
This seven-goal extravaganza encapsulated everything that makes League One such a compelling and unpredictable division. The quality on display, the individual moments of brilliance, the defensive lapses, and the raw drama of a late winner combined to produce a fixture that will be remembered long after the final whistle. For Cardiff supporters, Joel Bagan’s 99th-minute strike was redemptive and symbolic of their team’s refusal to accept anything less than three points.
With five consecutive victories achieved and their lead at the top reinforced, Cardiff now turn their attention to a Carabao Cup Quarter-Final tie at home against Chelsea at the CCS on Tuesday.