Whatever the final verdict on Manchester City's curious season, at least they will not need to reflect on a club record sequence of league defeats. After losing six in a row they were beginning to worry about matching the 1995 run of eight but a 71st-minute goal from Darius Vassell - his fourth against his former club this season - spared them that potential embarrassment.
Outplayed in the first half, Stuart Pearce's side deserved the outcome on the balance of their improvement after the break, although the home side were aggrieved to have what they thought was a legitimate stoppage-time equaliser by Kevin Phillips ruled out for offside. "Looking at the replays, I couldn't believe how clearly Kevin and everyone else was onside," said the Villa manager, David O'Leary. "That summed up a night when nothing went right for us."
City move up one place but have only Middlesbrough between themselves and O'Leary's side, a measure of how much they have fallen away. Villa's season has never looked like going anywhere while it is not so long since City were pushing for a Uefa Cup place.
Pearce had written off the season as a failure even before last night. "It was a pleasing win and it was important to end the run we have been in," he said. "It is disappointing it took us seven games to do so."
Villa would have led at half-time but for David James, who somehow kept out Olof Mellberg's header in the 16th minute when the Swedish defender's jump to meet Gareth Barry's far post cross looked certain to end with a goal.
Barry, operating in central midfield, was Villa's most productive player, almost putting Milan Baros in as early as the fifth minute. For City, Sylvain Distin missed with a clean header after four minutes and a fine tackle by Gary Cahill denied Albert Riera late in the opening half.
But it was after Pearce had withdrawn an anonymous Georgios Samaras that City began to improve. In midfield, Joey Barton and Claudio Reyna stepped up their work rate, while there were better supporting runs from Trevor Sinclair and David Sommeil, the latter setting up a shot for Riera that drew a fine save from Thomas Sorensen.
A Villa substitution, introducing the pacy Gabriel Agbonlahor for Baros, threatened to revive the home side but then Vassell popped up to continue his run of goals against his former club. The striker collected Reyna's pass inside the penalty area and turned quickly to wrongfoot Sorensen.
Villa threw on a third striker and the move appeared to have worked when Phillips fired home in stoppage time after James had parried Barry's shot. To the anguish of his team-mates, however, the linesman's flag was raised.
Aston Villa (3-4-1-2): Sorensen; Mellberg, Cahill, Ridgewell (Phillips, 75); Hughes, McCann, Barry, Samuel; Milner; Angel, Baros (Agbonlahor, 58). Substitutes not used: Taylor (gk), Bouma, Gardner.
Manchester City (4-4-2): James; Sommeil, Richards, Dunne, Distin; Sinclair, Reyna, Barton, Riera (Musampa, 90); Samaras (Sibierski, h-t), Vassell (Jihai, 87). Substitutes not used: Weaver (gk), Flood.
Referee: C Foy (Merseyside).