Arsenal delivered a potentially fatal blow to Manchester City's Barclays Premier League title hopes as Mikel Arteta fired home a brilliant late winner at Emirates Stadium, where Mario Balotelli was shown a red card in a 1-0 defeat.
Leaders Manchester United had earlier opened up an eight-point lead over their bitter rivals with their 2-0 lunchtime win over QPR at Old Trafford, leaving Roberto Mancini's men with little room for error this afternoon.
However, the Gunners - chasing a place back in the top three - raised their own game and created enough chances to have been well ahead by half-time, with Robin van Persie's goalbound header striking team-mate Thomas Vermaelen.
After the woodwork twice again came to City's rescue in the second half, the Gunners were not to be denied as, with three minutes left, Arteta strode forwards to smash a superb, 25-yard drive past Joe Hart into the bottom corner
City finished the match with 10 men when Balotelli, who should have been sent off for a studs-up challenge on Song in the first half which was missed by referee Martin Atkinson and his assistants, was shown a second yellow card for clattering into Bacary Sagna.
Mancini cut a forlorn figure at the final whistle, as his position will now once again come under intense scrutiny.
Arsenal started strongly, with both Theo Walcott and Sagna stretching former team-mate Gael Clichy on the overlap.
Tomas Rosicky was seeing plenty of the ball and on nine minutes the Czech midfielder's drive was deflected behind.
Yaya Toure, who once had a trial at Arsenal as a youngster, was left in a heap following a clash of knees with Song, and the Ivory Coast midfielder hobbled off for treatment.
On 14 minutes, Arsenal had a shout for a penalty when Vincent Kompany looked to have pushed Van Persie in the back as the ball was floated into the City penalty area.
Toure was unable to continue, and while the visitors were down to 10 men, they almost went behind.
A corner from the left was flicked through the City six-yard box, where Van Persie headed it goalwards, only for the ball to cannon back of team-mate Vermaelen on the line and up onto the crossbar, with Rosicky nodding the rebound over.
City made an enforced change on 17 minutes as David Pizarro replaced Toure.
Balotelli then caught Song with a studs-up challenge just below the knee. Neither Atkinson nor his assistant on the touchline saw the poor tackle which, if they had, would have surely resulted in a red card for the controversial Italian striker. Fortunately, Cameroon international Song was able to recover and continue.
On 25 minutes, Balotelli popped up in the Arsenal penalty area to flick a corner goalwards, and when his shot was blocked by Kieran Gibbs, the maverick City forward took his frustrations out by kicking the base of the post.
The Italian finally received a caution for catching Sagna with a high boot on 38 minutes.
It was perhaps something of a surprise to see the 21-year-old return for the second half, Mancini electing to keep faith with a player whom he openly admits he may well have punched were they team-mates.
City went on the offensive, with Sergio Aguero's looping header tipped over by Szczesny.
At the other end, Blues keeper Hart was a bystander as Van Persie came even closer to breaking the deadlock on 62 minutes after he was picked out from a floated cross by Song, but his cushioned header came back off the base of the post when perhaps the Dutchman - without a goal in three games - should really have hit the back of the net.
On 66 minutes, Laurent Koscielny caught Gareth Barry on the ankle to collect a 10th yellow card of the season, and with it a likely two-game suspension.
It was then City's turn to spurn a great chance when Kompany headed a deep free-kick back across the Arsenal six-yard box, but Balotelli failed to connect with his attempted scissors-kick.
The Gunners broke away through Song, who slipped Van Persie clear on the left side of the penalty area to slot past Hart, but the Dutchman had strayed just offside.
City's goal continued to lead a charmed life as Walcott's shot was tipped on to the far post by Hart, with Vermaelen then scuffing the rebound which Benayoun could not force past Joleon Lescott on the line.
On 87 minutes, Arsenal finally made the breakthrough - and effectively gift-wrapped the championship for United - when Mikel Arteta strode forwards to fire a brilliant 25-yard strike into the bottom corner.
Balotelli then lunged in on Sagna out on the far touchline, and was shown a second yellow card, swiftly followed by a red as City's season crumbled.