Middlesbrough ended Bristol City’s unbeaten start to the Championship season, with the Robins also knocked off the top of the table by Reading in defeat at Ashton Gate.
George Saville pounced on a howler between goalkeeper Daniel Bentley and defender Taylor Moore to nip in and slide the ball into the net on 73 minutes for the only goal of the game.
It felt as though it would take a moment of class or a mistake to come up with a winner as chances were few and far between, and in the end it was overplaying by Moore – who scored an own goal in last season’s meeting – that handed Saville the chance to strike.
Before that, neither side found the composure and quality necessary to take control of the game, which remained both open and scrappy in equal measure.
The closest City came to a chance of levelling once behind was when Tyreeq Bakinson went down in the box late on but referee Tim Robinson waved away any appeals for a penalty.
The optimism created by City’s start to the campaign made a night of pizza and beer at the club’s Ashton Gate bar a hot ticket for fans, creating the slightly farcical scenario of supporters watching on TV at the stadium but not allowed to attend in the traditional fashion.
Yet the game was fair bit tougher to digest than the food and drink on offer, as Bristol City never really got into a rhythm under the lights.
Neil Warnock’s Teessiders spoiled Reading’s 100% record at the weekend and frustrated Dean Holden’s Robins in similar fashion, setting about the pacesetters with tenacity as the midfield became a high-tempo battleground of loose touches and snappy tackles.
Boro had the better of the opportunities in the opening 45 minutes, as Chuba Akpom diverted a Saville cut-back wide of the far post, while Jamie Paterson followed up a cute nutmeg with a dragged shot wide of the target for the hosts.
City boss Holden saw defender Alfie Mawson withdrawn with a painful looking knee injury after a timely sliding hook tackle on Djed Spence in the box, while in attack Nahki Wells fired a half-chance over the crossbar.
There were fewer opportunities for Boro after the break, despite the promptings of Patrick Roberts, as Akpom was kept quiet, but Saville took the gift when it was presented to give the visitors their second win of the season.
Bristol City boss Dean Holden told BBC Radio Bristol:
“We were nowhere near the level we were at previously, we didn’t have a shot on target during the game and our performance levels were well below where we’ve been – we never got going.
“When you don’t perform as well as you can, you have to get away with a 0-0 and move on but we gave a poor goal away taking too much of a risk around the box.
“But saying that, how the referee hasn’t given a penalty for the challenge on Tyreeq Bakinson is beyond me. It’s a stonewall penalty. Sometimes referees get things wrong and there’s nothing we can do about that.”
Middlesbrough boss Neil Warnock told BBC Tees:
“I thought we deserved it and started the game really well, played some good football and had some chances.
“We restricted them, Bristol City haven’t had one shot on target tonight, we worked hard as a unit.
“We were always dangerous going forward, we just couldn’t get the bit of luck and we get a goal like that, we worked on closing down and George Saville did exactly that and it’s nice when you get your reward.”
- 5MawsonSubstituted forKalasat 58′minutes
- 7MartinSubstituted forDiédhiouat 70′minutes
- 21WellsSubstituted forSemenyoat 71′minutes
- 43S Sessegnon
- 1BettinelliBooked at 90mins
- 6FryBooked at 67mins
- 29SpenceSubstituted forTavernierat 74′minutes
- 19RobertsSubstituted forBrowneat 78′minutes
- 10AkpomSubstituted forWoodat 90+2′minutes
Match ends, Bristol City 0, Middlesbrough 1.
Second Half ends, Bristol City 0, Middlesbrough 1.
Offside, Middlesbrough. Marcus Tavernier tries a through ball, but Marcus Browne is caught offside.
Tomas Kalas (Bristol City) wins a free kick in the attacking half.
Foul by Nathan Wood (Middlesbrough).
Marcus Bettinelli (Middlesbrough) is shown the yellow card.
Substitution, Middlesbrough. Nathan Wood replaces Chuba Akpom.
Tomas Kalas (Bristol City) wins a free kick on the left wing.
Foul by Marcus Tavernier (Middlesbrough).
Offside, Middlesbrough. Marvin Johnson tries a through ball, but Marcus Browne is caught offside.
Attempt missed. Marcus Tavernier (Middlesbrough) left footed shot from the right side of the box misses to the left.
Foul by Zak Vyner (Bristol City).
George Saville (Middlesbrough) wins a free kick in the defensive half.
Famara Diédhiou (Bristol City) wins a free kick in the attacking half.
Foul by Dael Fry (Middlesbrough).
Substitution, Middlesbrough. Marcus Browne replaces Patrick Roberts.
Substitution, Middlesbrough. Marcus Tavernier replaces Djed Spence.
Goal! Bristol City 0, Middlesbrough 1. George Saville (Middlesbrough) left footed shot from the centre of the box to the bottom right corner.
Attempt missed. Sam Morsy (Middlesbrough) right footed shot from outside the box is high and wide to the right. Assisted by Patrick Roberts.
Attempt blocked. Patrick Roberts (Middlesbrough) left footed shot from the left side of the box is blocked. Assisted by Djed Spence.