Bristol City 0-1 Millwall: Post-match review, Stats, Key moments

Dive into Ladbrokes’ post-match review of Bristol City 0-1 Millwall in the Championship on Saturday, 06 December 2025, with stats, key moments and our take on the match.
Bristol City 0-1 Millwall Post-Match Review
Millwall beat Bristol City 0-1 at Ashton Gate. The first half saw Bristol City dominate possession but fail to break through, with Millwall picking up an early yellow for Ra’ees Bangura-Williams at 25 minutes and making a halftime switch as Camiel Neghli replaced Casper De Norre. Jake Cooper’s booking at 50 minutes added to Millwall’s discipline issues, but they took the lead when Mihailo Ivanovic scored in the 59th minute, assisted by Bangura-Williams, shifting momentum their way. Bristol City’s recent mixed form, including a win over Portsmouth but losses to Wrexham and now this, left them chasing the game without reward.
Bristol City responded with double substitutions at 64 minutes, as Ross McCrorie replaced Mark Sykes and Sinclair Armstrong came on for Jason Knight, but Armstrong soon picked up a yellow at 78 minutes. Millwall made further changes, with Thierno Ballo replacing Bangura-Williams at 73 minutes and Danny McNamara coming on for Aidomo Emakhu at 74 minutes, while Zak Sturge’s yellow at 80 minutes highlighted their gritty defence. Late subs for both sides, including Cameron Pring for Neto Borges at 82 minutes and Yu Hirakawa for George Tanner at 85 minutes for Bristol City, plus Alfie Doughty for Daniel Kelly at 82 minutes and Macaulay Langstaff for Femi Azeez at 83 minutes for Millwall, couldn’t change the scoreline, with Millwall’s run of three straight wins, including against Southampton and Sheffield Wednesday, proving their resilience here. Doughty’s yellow at 87 minutes and Ballo’s at 90 minutes underlined a tense finish, but Millwall held firm for the points.
Bristol City 0-1 Millwall Statistics
Bristol City controlled the ball with 67% possession against Millwall’s 33%, suggesting they dictated play but lacked the cutting edge to convert it into goals, while Millwall looked efficient on the counter. They racked up eight corners to Millwall’s one, pointing to sustained pressure in attacking areas, yet both sides matched each other on successful dribbles at 62 apiece, showing neither had a clear edge in beating defenders. Discipline tilted heavily towards Millwall with five yellow cards compared to Bristol City’s one, and the visitors used all five substitutions—starting with Camiel Neghli for Casper De Norre at halftime, followed by Thierno Ballo for Ra’ees Bangura-Williams at 73 minutes, Danny McNamara for Aidomo Emakhu at 74 minutes, Alfie Doughty for Daniel Kelly at 82 minutes, and Macaulay Langstaff for Femi Azeez at 83 minutes—while Bristol City made four changes, including a double at 64 minutes with Ross McCrorie for Mark Sykes and Sinclair Armstrong for Jason Knight, then Cameron Pring for Neto Borges at 82 minutes and Yu Hirakawa for George Tanner at 85 minutes.
Millwall’s single assist led to their decisive goal, with no penalties or injury-time strikes for either team, and no red cards issued, keeping the focus on a hard-fought battle where Bristol City’s dominance didn’t translate to the scoreboard.
Key Moments from Bristol City 0-1 Millwall
The game’s turning point came at 59 minutes when Mihailo Ivanovic fired Millwall ahead, assisted by Ra’ees Bangura-Williams, breaking the deadlock after a first half where Bristol City had the upper hand but couldn’t score. Millwall’s discipline was tested early with Bangura-Williams’ yellow at 25 minutes and Jake Cooper’s at 50 minutes, but they managed the pressure well. Bristol City’s substitutions at 64 minutes, bringing on Ross McCrorie for Mark Sykes and Sinclair Armstrong for Jason Knight, aimed to inject energy, though Armstrong’s yellow at 78 minutes for a foul didn’t help their cause.
Millwall’s bench impact continued with Thierno Ballo replacing Bangura-Williams at 73 minutes and Danny McNamara coming on for Aidomo Emakhu at 74 minutes, helping them see out the win despite late yellows for Zak Sturge at 80 minutes, Alfie Doughty at 87 minutes after his 82-minute entry for Daniel Kelly, and Ballo at 90 minutes. Bristol City’s late changes, with Cameron Pring for Neto Borges at 82 minutes and Yu Hirakawa for George Tanner at 85 minutes, pushed for an equaliser but fell short.
Bristol City 0-1 Millwall Lineups
Bristol City
Bristol City lined up in a 3-5-2 shape, relying on width from the wing-backs like George Tanner and Neto Borges to stretch the play, while Jason Knight and Mark Sykes provided midfield drive before their substitutions. Partnerships in attack struggled to click, with no assists recorded, and Sinclair Armstrong’s introduction as a sub added pace but also drew a yellow card.
Millwall
Millwall set up in a 4-2-3-1 formation, with Jake Cooper anchoring the defence amid his yellow card, and attackers like Ra’ees Bangura-Williams and Mihailo Ivanovic linking effectively for the goal before Bangura-Williams’ substitution. The midfield base allowed Camiel Neghli, who came on at halftime, to support forward runs, while late subs like Alfie Doughty and Thierno Ballo helped maintain their structure.
Ladbrokes’ Man of the Match
Ladbrokes’ Man of the Match goes to Mihailo Ivanovic for his decisive contribution, netting the only goal of the game in the 59th minute while delivering two key passes that kept Millwall threatening. Though he created no big chances and had no assists beyond the goal involvement, his strike proved the difference in a tight contest.
Updated Form Guide
Bristol City
Recent Championship matches:
- Loss: 0-1 vs Millwall (H)
- Win: 1-0 vs Portsmouth (A)
- Loss: 0-2 vs Wrexham (A)
- Win: 3-0 vs Swansea City (H)
- Draw: 1-1 vs Watford (A)
Millwall
Recent Championship matches:
- Win: 1-0 vs Bristol City (A)
- Win: 3-2 vs Southampton (H)
- Win: 1-0 vs Sheffield Wednesday (H)
- Loss: 1-3 vs Portsmouth (A)
- Draw: 1-1 vs Preston North End (H)
What’s Next for Both Teams?
Bristol City
Bristol City have just lost 0-1 at home to Millwall, leaving them seventh on 29 points with a patchy recent run that includes a win over Portsmouth but defeats to Wrexham and this latest setback. They face Leicester City next on 2025-12-10 at 19:45, with the visitors sitting 14th on 27 points, offering a chance to bounce back and solidify their playoff push against a side also looking to climb the table.
Millwall
Millwall have just won 1-0 away at Bristol City, boosting them to third on 34 points after a strong streak with victories over Southampton and Sheffield Wednesday following a loss to Portsmouth. Their next fixture is against Derby County on 2025-12-10 at 19:45, with Derby in 15th on 26 points, presenting an opportunity to extend their promotion charge against mid-table opposition.
Ladbrokes brings you the most exciting betting promotions and the latest betting offers to enhance your experience.
For the best Championship outright predictions, explore our Outright Betting guide.
Odds and market details are accurate as of the time of publication.










