If this is Manchester City's Champions League group of death, then Sergio Aguero's 93rd-minute winning goal last night was surely their kiss of life.
Almost 93 minutes were on the clock, and some of the City support were beating a path down Joe Mercer Way, when Aguero at the back post slotted the ball in from Pablo Zabaleta's cross and saved Roberto Mancini from what he later admitted would have been a near-impossible task to progress from Group A. City are alive, but it was a damn close thing.
The club's first victory in European football's leading domestic club competition could not have come soon enough and that it arrived at the feet of their Argentinian substitute made it all the sweeter for Mancini. Twenty-one days ago, Carlos Tevez had refused to come off the bench for City in Munich and the contrast with his compatriot's intervention last night was striking.
Before then City were being caught up in a mess of their own making. They had conceded within four minutes and had to fight their way back into the game with an equaliser, an own goal from Carlos Marchena, just before half-time. Having lost their way in the second half at times, the dramatic nature of the winning goal suggested that, for all their chaos at times, this is a team that is learning quickly in Europe.
On the touchline, Mancini celebrated with rare abandon. For him, this must have been a major relief when you take into consideration the credibility he has had riding on the Tevez saga over the last two weeks.
For long periods of the second half City laboured to break down Villarreal who acquitted themselves well after Cani's early goal. But it was for games such as these that they bought Aguero and for £45m they got a player who is capable of making the difference when there is the finest of margins.
With Napoli earning a draw away at Bayern Munich last night, City were facing the prospect of being three points adrift of the Italians with three games to play – two of which are away from home. After Aguero's winning goal that gap to Napoli is just a single point and the game against them in Naples on 22 November looks as if it will be the most significant in deciding City's destiny.
Before then they must win in Villarreal in two weeks' time although with three defeats in three games the Spanish side are all but out. At times last night they were excellent, especially the former Manchester United striker Giuseppe Rossi who, one silly dive apart, kept up the threat all night. They scored an early goal and very nearly held out.
It was not City's finest 90 minutes especially not in comparison with their progress in the Premier League, but the determination to hang in right to the end spoke volumes. Edin Dzeko missed far too many chances again, something that Mancini alluded to after the match, and the goal that they conceded was sloppy. This is, after all, their first year in the competition and at times it showed.
If there was ever a night on which City needed a positive start then it was this. Despite what was riding on the game, there was nothing like the atmosphere that had accompanied their debut in the competition against Napoli last month, not helped by a virtually non-existent away section. Villarreal's travelling support comprised of around 20 fans. The Spanish do not have a big support and rising unemployment in the town has made matters much worse.
Villarreal are no longer backed with the same financial muscle by their president Fernando Roig and their glory years in Europe are clearly behind them but they still have the capability to sting and showed it in the fourth minute.
David Silva put Nigel De Jong under pressure with a pass in midfield and he was dispossessed by Jonathan De Guzman. From there the ball was played into Rossi whose shot was parried by Joe Hart allowing the right-sided midfielder Cani, following up, to tap it over the line. From then, Villarreal grouped behind the ball, they wasted time on throw-ins and free-kicks and generally dug-in, always with the threat of Rossi on the counter-attack.
Mancini can be cold-blooded and never more so than when he hauled Adam Johnson off with five minutes of the first half left. It was embarrassing for Johnson and he did not try to hide his displeasure, spreading his arms in disbelief, shaking his head and ignoring his manager as he went off.
But these are the tough decisions that Mancini is paid to make and it worked out nicely. Gareth Barry came on for Johnson and took Yaya Toure's place as one of the two holding midfielders. That allowed Toure to push up into the central position behind Dzeko and Silva to take Johnson's place out on the right.
Three minutes later Silva and Samir Nasri worked the ball out left to Aleksandar Kolarov and his cross was turned into the Villarreal goal by Marchena. The Spain international was lunging to stop the ball reaching Dzeko who surely would have finished the job himself.
The opportunity was there for City at the start of the first half to seize the initiative but they failed to take it. That might have been different if Dzeko had done a better job of steering Zabaleta's cross past Diego Lopez in the Villarreal goal in the first minute of the new half, but the City striker was dozy in his reaction. He seemed doubtful whether he was onside.
Twice Mancini re-organised his team with substitutions as Aguero and then James Milner came on. Aguero created a chance for Dzeko but his shot was wild and nervous. There were further chances for Silva and Kolarov as City increased the pressure.
It was Milner who played in Zabaleta for the goal. He crossed from the right, there was a touch from Silva and Aguero put the ball in at the back post. The Villarreal players surrounded the referee after the goal protesting it was offside, an objection that their coach Juan Carlos Garrido later withdrew. City had made it, but only just and in Naples they will have to be much better.
Man of the match Silva.
Match rating 6/10.
Referee P Kralovec (Czech Republic).