Match ends, Manchester City 2, Shakhtar Donetsk 0.
Manchester City 2-0 Shakhtar Donetsk
Kevin de Bruyne scored a superb goal as Manchester City beat Shakhtar Donetsk to make it two Champions League Group F wins out of two.
Belgium midfielder De Bruyne exchanged passes with the excellent David Silva before curling in his first goal of the season from the edge of the area. Raheem Sterling added a late second from fellow substitute Bernardo Silva's cutback.
Striker Sergio Aguero, looking to equal Eric Brook's all-time goalscoring record for City, suffered a rare off night and had a second-half penalty saved by Shakhtar's Andriy Pyatov.
The Argentine also had two further efforts pushed away by the Ukraine goalkeeper.
Having found the net 22 times in their previous five games, City were expected to steamroller their opponents but were left frustrated in a goalless opening period which saw De Bruyne shoot wide from a one-on-one situation and Leroy Sane drill a low shot inches off target.
Shakhtar had chances themselves, and Brazilian Marlos forced Ederson into a fine, full-stretch save, while former Newcastle striker Facundo Ferreyra nodded a free header wide from six yards out.
Eredivisie champions Feyenoord, who were thrashed 4-0 by City in their opening group game, lost 3-1 against Serie A side Napoli in Tuesday's other group game.
- Relive Manchester City's win over Shakhtar Donetsk
- Listen: 5 live's Football Daily podcast
- Mendy facing 'major setback' - Guardiola
City win a different way
Ukrainian champions Shakhtar were one of the best teams City have faced this season and the Premier League leaders had to contend with some difficult moments before collecting the three points.
Pep Guardiola's free-scoring side have blown away many of their opponents but they were made to work hard this time and have now won eight out of their nine games in all competitions, netting 29 times and conceding just three.
The former Barcelona and Bayern Munich boss failed to win a trophy for the first time in his career last season, but the signs are encouraging this term with a more balanced team who have adapted to his methods.
Centre-back John Stones looks much more comfortable and made 101 passes - more than any other player on the pitch - and disciplined holding midfielder Fernandinho's four tackles, four interceptions and five clearances were unmatched by any other player.
Another positive was the performance of Fabian Delph, playing at left-back in place of the injured Benjamin Mendy. The Englishman did not look out of position from his usual central midfield spot, winning the ball back 13 times.
Guardiola said: "For me, Fabian was man of the match. The guy is so kind and helps the team, he is intelligent, is physical and never loses the ball. He controlled Marlos and did it very well."
Going forward, Spain playmaker David Silva pinged the ball around in his usual classy fashion, De Bruyne showed his flair with an outstanding goal, while Sterling came on to score his sixth goal of the season - again timing his run into the box to perfection before finishing.
Goalkeeping problem solved?
There was a spell of eight games last season when City goalkeeper Claudio Bravo had conceded 14 goals from 22 shots on target.
The Chile international has been replaced by £35m summer signing Ederson from Benfica, who looks to be an impressive upgrade.
Not only is his distribution eye-catching - often finding a team-mate with a pinpoint pass towards the halfway line - the Brazilian is decisive when sprinting off his line to cut out the ball and confidently claims high balls into the box.
Most importantly, City have found a goalkeeper who can make saves and earn points, thwarting Marlon and Taison efforts to preserve his sixth clean sheet of the campaign.
Defender Stones said: "It is not easy coming from another country. From speaking to the boys in the past who have come over to the Premier League, it is a different culture, different language, and he has settled. He is speaking to us on the pitch, and he is a vocal presence and a presence as a person, which is a credit to him."
Former Scotland striker Ally McCoist on BBC Radio 5 live:
There are only three or four teams capable of winning the Champions League and I think Manchester City are the best-placed English team.
But I am not sure they are at the level to go and win the tournament. They have an unbelievable squad to pick from so they won't have a problem there.
Do they have that something extra to win the Champions League? I'm not so sure.
City face another stern test on Saturday when they travel to Premier League champions Chelsea (kick-off 17:30 BST).
'Even at 1-0, we were stable'
Manchester City boss Pep Guardiola told BT Sport: "A lot of credit to what we have done. The way Shakhtar play, they demand a lot of us but our high pressing was brilliant. We had problems in the first half, we did not make enough passes in a row but the second half was much, much, much better. We are so happy for the win.
"They were very narrow and there was little space in between but then our full-backs were able to dictate and created a lot of chances for another four or five goals.
"Even at 1-0, we were stable. We did not score goals but it was a demanding game. The next game against Napoli will be even tougher."
Aguero off the spot - the stats
- Manchester City have won their opening two Champions League group games in a season for the first time.
- No Ukrainian club has ever won an away game in the Champions League against English opposition (drawn two, lost 13).
- Manchester City are unbeaten in their past 10 Champions League home games (won seven, drawn three), their longest run without a defeat on home soil in the competition.
- Kevin de Bruyne has been directly involved in 12 goals in his past 12 games for Manchester City in all competitions (three goals, nine assists).
- De Bruyne has scored eight of his last 10 Man City goals from outside the box, including each of the last three.
- Sergio Aguero has scored just two of the past seven penalties that he has taken in Champions League competition (including qualifiers).
- Raheem Sterling has now scored six goals in his past seven competitive appearances for Manchester City.
- 17De Bruyne
- 21SilvaSubstituted forGündoganat 81'minutes
- 33Gabriel JesusSubstituted forSterlingat 54'minutes
- 10AgüeroSubstituted forBernardo Silvaat 85'minutes
- 20Bernardo Silva
- 42Y Touré
- 18OrdetsBooked at 66mins
- 31dos Santos
- 8FredSubstituted forKovalenkoat 90+1'minutes
- 11MarlosSubstituted forDentinhoat 78'minutes
- 7Barcellos Freda
- 10BernardSubstituted forPetryakat 89'minutes
- 66de Azevedo
- Jorge Sousa
- Shots on Target
Second Half ends, Manchester City 2, Shakhtar Donetsk 0.
Offside, Shakhtar Donetsk. Taison tries a through ball, but Ivan Petryak is caught offside.
Substitution, Shakhtar Donetsk. Viktor Kovalenko replaces Fred.
Goal! Manchester City 2, Shakhtar Donetsk 0. Raheem Sterling (Manchester City) right footed shot from the centre of the box to the top left corner. Assisted by Bernardo Silva.
Substitution, Shakhtar Donetsk. Ivan Petryak replaces Bernard.
Attempt blocked. Leroy Sané (Manchester City) right footed shot from the centre of the box is blocked. Assisted by Ilkay Gündogan with a through ball.
Attempt missed. Leroy Sané (Manchester City) left footed shot from the left side of the box is close, but misses to the right. Assisted by Fabian Delph with a headed pass.
Substitution, Manchester City. Bernardo Silva replaces Sergio Agüero.
Attempt saved. Fabian Delph (Manchester City) right footed shot from outside the box is saved in the centre of the goal.
Attempt blocked. Sergio Agüero (Manchester City) right footed shot from the left side of the box is blocked. Assisted by Ilkay Gündogan.
Substitution, Manchester City. Ilkay Gündogan replaces David Silva.
Substitution, Shakhtar Donetsk. Dentinho replaces Marlos.
Attempt missed. Sergio Agüero (Manchester City) right footed shot from outside the box is close, but misses to the right.
Foul by Fernandinho (Manchester City).
Fred (Shakhtar Donetsk) wins a free kick in the defensive half.
Attempt saved. Taison (Shakhtar Donetsk) right footed shot from outside the box is saved in the bottom right corner. Assisted by Bernard.
Corner, Shakhtar Donetsk. Conceded by John Stones.
Foul by Raheem Sterling (Manchester City).
Yaroslav Rakitskiy (Shakhtar Donetsk) wins a free kick in the defensive half.
Delay over. They are ready to continue.
Delay in match Taison (Shakhtar Donetsk) because of an injury.
Nicolás Otamendi (Manchester City) wins a free kick in the defensive half.
Foul by Facundo Ferreyra (Shakhtar Donetsk).
Corner, Manchester City. Conceded by Andriy Pyatov.
Penalty saved! Sergio Agüero (Manchester City) fails to capitalise on this great opportunity, right footed shot saved in the bottom left corner.
Penalty Manchester City. Leroy Sané draws a foul in the penalty area.
Penalty conceded by Ivan Ordets (Shakhtar Donetsk) after a foul in the penalty area.
Attempt missed. Raheem Sterling (Manchester City) left footed shot from the centre of the box misses to the left. Assisted by Kevin De Bruyne with a cross.
Attempt blocked. Fernandinho (Manchester City) right footed shot from outside the box is blocked. Assisted by David Silva.
Foul by Leroy Sané (Manchester City).
Bernard (Shakhtar Donetsk) wins a free kick in the defensive half.
Attempt missed. Sergio Agüero (Manchester City) right footed shot from the centre of the box misses to the left. Assisted by Kevin De Bruyne with a cross following a set piece situation.
Ivan Ordets (Shakhtar Donetsk) is shown the yellow card for a bad foul.
David Silva (Manchester City) wins a free kick on the left wing.
Foul by Ivan Ordets (Shakhtar Donetsk).
Offside, Manchester City. Leroy Sané tries a through ball, but David Silva is caught offside.
Corner, Manchester City. Conceded by Ismaily.
Attempt blocked. Kevin De Bruyne (Manchester City) right footed shot from the centre of the box is blocked. Assisted by Leroy Sané with a cross.
Foul by Fernandinho (Manchester City).