Hoffenheim came so close to earning another point in their second Champions League game, but the best team in England proved a step too far. Julian Nagelsmann's side perhaps deserved more.
Hoffenheim 1-2 Manchester City
(Belfodil 1' - Aguero 8', Silva 87')
David Silva struck late to spoil Hoffenheim's home debut in the Champions League as Pep Guardiola's side eventually took advantage during a spell of pressure to get their first win in Group F. After a crazy opening 10 minutes, Hoffenheim looked set to earn a point for their efforts, before Silva netted.
In a stunning opening, Ishak Belfodil latched onto a through ball to slot past Ederson after just 43 seconds. Coming off the back of a defeat in their opening Champions League game, Man City couldn't afford another slip up. Undeterred by their early setback, Pep Guardiola's side quickly found an equalizer - Sergio Aguero tucking home from close range after good work by Leroy Sané.
From that point on, City started to take control. Oliver Baumann made a good save to deny Raheem Sterling after the winger burst through, and Sané nearly danced his way in for a second. But Hoffenheim stood firm and towards the end of the first half, had chances of their own. Belfodil nearly got on the end of a cross, and then was denied by Ederson as the striker flashed a shot across goal.
Both sides flashed half chances wide, as an end-to-end game also became niggly. Kyle Walker lunged in on Pavel Kaderabek and was lucky to escape with just yellow.
Ilkay Gündogan, who received some whistles from the German crowd, was brought off with a muscle injury, but City showed no sign of letting up. Sane burst through after a lucky deflection fell for him and Baumann brought him down, arriving late to the challenge. But referee Damir Skomina did not point to the spot, perhaps leaving City wishing VAR had been introduced this season not next.
With time running out, David Silva snuck in to steal the ball off defender Stefan Posch, who was in the process of clearing the danger, to slot into the far corner.
As it happened:
90'+4 The referee's final whistle goes! That's it. To Manchester City go all three points. Guardiola will be relieved
90'+3 Sané gets the ball in the Hoffenheim area and blasts it way off the target. Aguero gets the yellow card for delaying the time wasting.
90'+2 Free kick for Hoffenheim after an Aguero foul, but they're unable to capitalize.
90' Bittencourt with an effort from well out, but it goes way off the City goal. Four minutes to be added on.
89' Nagelsmann calls off Demirbay, who is replaced by Hack.
87' GOAL for MANCHESTER CITY! David Silva scores what must be the winner after Posch tried but failed to control the ball near the penalty spot.
80' Ten minutes to go and Hoffenheim are still on course to take a point from the Premier League's top team. Play in the second half has been much less free-flowing than in the first 45 minutes.
75' Pep makes his final move: Sterling's night is over Mahrez replaces him.
73' Baumann brings down Sané, who had broken in all alone. It looked like it should have been a penalty, but the Hoffenheim keeper gets away with it. No VAR in Champions League, so no video review.
66' Things are suddently getting chippy! Walker goes right through Kaderabek and gets yellow for his trouble. Kaderabek is back on his feet after some on-field treatment from the physio. Now Gündogan is on the ground, and he's being subbed off cluching his right leg. Bernardo Silva comes on for him.
64' Substitution for Manchester City, John Stones comes on for Otamendi.
61' A break by Hoffenheim, Kaderabek does well to win a free kick from a good distance. But it's wasted, still Hoffenheim win a corner - which is easily gathered in by Ederson.
59' A long ball from Hoffenheim and Ederson comes way out of his area and the ball bounces over his head! Only the pace of Sané tracking back saves the City 'keeper.
57' Demirbay gets the yellow card for a foul in the middle of the park. Demirbay then fouls Sané just outside the Hoffenheim box... just seconds after being booked. The resulting free kick comes to nothing.
53' First substitution for Hoffenheim: Andrej Kramaric comes on for Adam Szalai.
52' The second half has started much more quietly than the first - two goals in the first eight minutes is hard to top. But there's much less movement off the ball from the two sides.
47' Hoffenheim break down the right, but Belodil's shot goes across the face of the City goal. What should have been a dangerous chance comes to nothing.
46' City kick off and we are underway with the second half.
45'+1 The referee blows his whistle to end the first half. Hoffenheim were under pressure for much of the first 45, but Manchester City's back line showed it is by no means inpenetrable.
45' Just one minute to be added on to the first half.
43' A long ball from Ederson finds Aguero up front. He gets off a strike from distance that goes over the Hoffenheim bar.
39' What a ridiculous mistake by Laporte! Belfodil runs in at Ederson but the City keeper saves the day.
37' The 67 percent ball posession for City to this point comes as no surprise.
36' Yellow card for City's Fernandinho for a tactical foul.
33' Aguero really should have scored after Sané beat three men to get into the area (admittedly with a bit of luck).
29' Gündogan delivers another corner, that Kompany gets onto the end of, but Baumann has not trouble stopping his header. Every time Gündogan gets the ball he is being subjected to whistling and jeering from some of the crowd.
27' Manchester have been clearly dominant for the past 20 minutes, with Hoffenheim struggling to get the ball out of their half.
20' City back Hoffenheim deep into their half in a sustained attack. Eventually it goes out for a corner, which comes to nothing.
15' Sterling barges into Baumann's area and puts it between the Hoffenheim keeper's legs, but he still gets enough of it to force it wide. This is followed by two corners, but Hoffenheim escape unscathed.
11' Yellow card for Otamendi after he came in from behind on Szalai.
8' GOAL for MANCHESTER CITY! Sergio Aguero replies for the Citizens. Leroy Sané broke into Oliver Baumann's area on the left and pushed it across for Aguero, who found the back of the net with three Hoffenheim defenders powerless to stop him.
5' Sterling barges through to the edge of the Hoffenheim area and looks for a foul, but the ref waves play on.
1' GOAL for HOFFENHEIM! Ishak Belfodil runs onto a through ball and puts it past Ederson in the City goal! That's a start nobody could have predicted. It can only do the game good.
1' Hoffenheim kick off and we are underway in Sinsheim!
18:53 The two teams are on the pitch, the Champions League hymn has been played. We are just minutes from kickoff.
18:20 This will be a historic night in Sinsheim as Bundesliga club Hoffenheim play their first home game in Europe's top club competition. They're coming off a 2-2 draw Shakhtar Donetsk in Ukraine, but Julian Nagelsmann and his men will be facing a much sterner challenge in the form of Pep Guardiola's Manchester City. The Citizens are coming off a 2-1 defeat against Lyon and Guardiola has described the rest of their Group F matches as "five finals." Nagelsmann, the Champions League's youngest coach at age 31, will also not be helped by the fact that he is missing several regulars due to injury.
18:25 The lineups are out: