Bristol City produced an FA Cup upset as 10-man West Ham were beaten 1-0 in a third-round replay at Ashton Gate.
Tommy Conway’s equaliser at the London Stadium nine days earlier had set up this return tie and the 21-year-old striker was the Robins’ hero again as his early goal proved the difference.
West Ham, sixth in the Premier League, suffered further misery as Said Benrahma was sent off after 51 minutes for reacting stupidly to a strong challenge from Joe Williams.
Bristol City, 14th in the Sky Bet Championship, will again meet top-flight opposition in the fourth round should Nottingham Forest successfully negotiate their replay at Blackpool on Wednesday.
How Robins dumped West Ham out
West Ham boss David Moyes was short on attacking options with Jarrod Bowen, Lucas Paqueta and Michail Antonio injured and Ghana’s Mohammed Kudus away at the Africa Cup of Nations.
Danny Ings, strongly linked with a move to Wolves this January, started for the first time since November alongside Benrahma and Maxwel Cornet.
West Ham were down on numbers and three current academy players occupied a bench one short of taking up its full allocation of nine substitutes.
Bristol City began with nine of the side that started the 1-1 draw in East London and Conway was on the scoresheet again inside three minutes after West Ham had wasted a golden opening – Cornet overhitting a pass with Ings clean through.
The action immediately switched to the other end where Konstantinos Mavropanos’ mistake allowed Conway to round Lukasz Fabianski and make light of a tight angle by rolling the ball home.
Anis Mehmeti sent a 20-yard effort over but the Hammers gradually asserted authority with Max O’Leary’s goal coming under increasing threat.
Ings was off target from the edge of the box, Mavropanos failed to connect with James Ward-Prowse’s free-kick when contact would surely have levelled matters and Cornet was denied by a last-gasp Cameron Pring challenge.
Cornet, making only his second start of the season, underlined his rustiness further by miskicking in front of goal, while Pring was vigilant to turn away Ings’ effort close to the line.
Bristol City had defended for most of the half, but the hosts burst into life in the final minute.
Mehmeti’s low effort tested Fabianski at his near post and the veteran goalkeeper was called upon from the resulting corner to gather Ross McCrorie’s header.
Life got a lot more difficult within six minutes of the restart when Benrahma kicked out at Williams after being fouled.
Referee Darren England took his time to decide the punishment as Benrahma received treatment, but the Algerian was eventually banished when back on his feet.
Tempers boiled over again as Taylor Gardner-Hickman and Aaron Cresswell were booked after grappling with each other.
West Ham almost equalised after Ings and Emerson combined and Cornet crossed for Tomas Soucek to force O’Leary into an excellent reflex stop from close range.
Substitute Nakhi Wells nearly doubled Bristol City’s lead, but the Robins held on for a famous victory and home fans celebrated as if they had won the cup itself.
Manning: We can get better
Bristol City boss Liam Manning told BBC:
“I think it was another solid performance. We showed real resilience, a good connection and level of organisation. At times it was challenging and we had to keep our emotions in check and we did a terrific job at that.
“We don’t carry anybody – everybody attacks and everybody defends. You need everyone to turn up and do the basics as well and when called upon give that little bit extra.
“I actually think we can improve and get a little bit better. We had a disappointing performance and result against Preston. It is the challenge now, how do we find the consistency in the league? The lads have shown they can do it against Premier League opposition.”
Moyes: Amazed there was no VAR
West Ham boss David Moyes told BBC:
“I’m disappointed. Lots of things didn’t go for us tonight but overall disappointed. We had one or two opportunities, especially in the first half. Some good things but not enough to win the game.
“It is a blow because we would have liked to have been in the cup but we have Europe to look forward to in March and we are in a good position in the league, but we are disappointed to go out.”
On Benrahma’s red card: “It made it much more difficult that’s for sure. We were a goal down already at that point. I’ve had a look at it and I don’t think we can have any complaints. I wasn’t sure about the tackle on him, that might have been questionable.”
On no VAR in this game: “It’s incredible that they call it the best cup competition in the world but yet we have one week where we have VAR and the next we don’t. I find it quite ridiculous.”
Conway: Unbelievable feeling
Bristol City striker Tommy Conway told BBC:
“It’s not bad [scoring the winner]. Obviously, I got the goal at their place and got the winner in front of a sell-out crowd here. It was unbelievable.”
On making it difficult for West Ham: “That’s the message every game. I’ve been coming here since I was seven and to get the winner is unbelievable. It’s the best I’ve seen it in a while and to send them home happy is unbelievable.”
On fifth-round tie: “Hopefully we can keep doing that and take it into the league. Give us anything and we can go at it. Give us Premier League and we’ll give it our best again.”
What’s next?
Bristol City host Watford in the Sky Bet Championship on Saturday; kick-off 3pm.
West Ham visit Sheffield United in the Premier League on Sunday January 21 at 2pm.