Leroy Sane booked Manchester City's place in the Carabao Cup fourth round after they survived a scare at West Brom.
The winger's brace kept Pep Guardiola's side on track in the competition as they clinched a deserved 2-1 win.
Claudio Yacob's second-half equaliser briefly threatened to take the tie into extra time and make a mockery of City's dominance after they almost ran riot in the first half.
Sane, Gabriel Jesus, Raheem Sterling and Eliaquim Mangala almost put the game out of sight before the break but were let down by bad finishing or thwarted by the excellent Ben Foster.
Albion made it more of a contest in the second half and Hal Robson-Kanu hit the post in injury time.
But City's night was tarnished after Ilkay Gundogan limped off on his first start since December following a serious knee injury.
He was forced off following a tackle from Yacob which left boss Guardiola upset on the touchline.
Here is how the action unfolded with the Manchester Evening News's Stuart Brennan, James Robson, Simon Bajkowski and Richard Kay.
West Brom: Foster, Nyom, McAuley, Evans, Dawson, Gibbs, Krychowiak, Morrison, Yacob, Rodriguez, Robson-Kanu.
Subs: Myhill, Hegazi, Field, Barry, McClean, Phillips, Rondon
Manchester City: Bravo, Danilo, Gundogan, Stones, Mangala, Yaya Toure (C), Delph, Bernardo, Sterling, Sane, G Jesus
Subs: Ederson, Walker, Adarabioyo, Fernandinho, Zinchenko, Diaz, Foden
Cup draw
The full draw.
Gundogan out
Slightly different! Although very similar at the same time.
Gundogan out
Sidelined for a month.
Gundogan news
Said presser coming soon.
Well played Charlie
History
City v Wolves
A home draw against a team that isn’t in the Premier League. Miracles do happen.
No Swansea
One long trip avoided for City.
Time for the draw
Here it comes.
FT view
It’s all over. City are through - but West Brom will be wondering how they’ve come away with nothing.
They had the chances - really good ones - to win this.
FT
That is that. City see it out and they’re into the hat for the next round. The big question on everyone’s lips, however, is Gundogan.
What a miss!
What a miss!
We should be headed for extra time now, but Robson-Kanu inexplicably fired wide when one on one with Bravo.
Incredible.
Injury time
Five minutes added time.
Hold on...
This one is going to go right down to the wire.
West Brom are still a threat and pumping the ball into the box.
Wouldn’t mind 30 more minutes of this kind of action though.
Bravo holds
Claudio Bravo showing some good game management here, taking his time on goal kicks and holding the ball for as long as he can. Two minutes plus stoppage to hold out for.
Danilo booked
West Brom have suddenly discovered they might want to win the game, and Danilo is booked for a late challenge on the right hand side of the pitch.
West Brom in it
This has turned into a cracking cup tie and West Brom deserve their share of the credit.
It’s not over yet either.
Corner to West Brom
Sane comes off
Fernandinho on - can City make this game safe now? They were rocking for a few minutes
2-1 City!!!
What a goal. Sane bursts down the pitch to curl a shot into the top corner.
West Brom thought they were just about to take the lead seconds before when Bravo denied Morrison.
End to end.
West Brom chance!
West Brom should be ahead - Robson-Kanu just missed the target from eight yards.
Poor defending
Has to be said - shocking defending from a corner from City.
There were two West Brom players completely unmarked in the six yard box and Yacob made them pay.
Yacob talk
The warning signs were there. From a corner Yacob is left completely free in the box to side foot home.
But should he still be on the pitch after that tackle on Gundogan?
Goal West Brom
Claudio Yacob scored for West Brom. 1-1. It’s a simple game, football!
West Brom chance
There’s the warning sign for City. Morrison burst into the box and poked a shot narrowly wide.
West Brom are still a threat.
Then City run straight down the other end - Sane opted to pass to Bernardo rather than shoot, but couldn’t get the final ball right.
Rough and ready
West Brom’s only strategy tonight seems to have been to rough up City. Jesus is manhandled seconds before Sterling is hauled back. The City and England man is then booked for dissent.
Away support
Almost one in every four there tonight is a Blue.
Gundogan effect
Understandable, needed a reshuffle.
Sterling drive
That was just the latest example of Sterling getting his head down and driving straight at goal. He’s been really impressive tonight.
Sterling chance
Sterling has City’s best chance in a long time. Forces a save from Foster’s boot after jinking run.
Sane booked
Kyle Walker comes on and Leroy Sane goes in the book for kicking the ball away. A silly one to pick up.
Gundogan coming off
Gundogan hobbling to the touchline. Looks like Guardiola isn’t taking any chances. Walker is coming on.