Arsenal's title hopes suffered another major blow as Swansea ran out 2-1 winners at the Emirates on Wednesday night.
The Gunners had taken the lead through Joel Campbell in the 15th minute, but Wayne Routledge then levelled just after the half-hour mark for the Swans.
Arsenal hit the woodwork three times, and missed a host of other chances, but it was Swansea, without head coach Francesco Guidolin who missed the game through illness, who found the winner as Ashley Williams bundled home from Gylfi Sigurdsson's free-kick with just over 15 minutes to go.
The result leaves Arsene Wenger's men six points behind leaders Leicester, piling the pressure on the Frenchman's shoulders in the process, while Swansea climb six points away from the relegation zone.
The hosts dominated right from the off, and it wasn't long before Campbell gave them the lead, lashing the ball home on the half-volley from Alexis Sanchez's dinked pass, and they should have been out of sight by half-time.
Before providing the opener, Sanchez himself hit the post, and Olivier Giroud smashed the ball against the bar from Per Mertesacker's knockdown just before the break.
But all Arsenal's good work came undone in the 32nd minute as Swansea scored with their first real opportunity of the half.
And it was a goal that did nothing to dispel the criticism of Arsenal's supposed soft centre - which looked even weaker without defender Laurent Koscielny.
Two passes was all it took for Swansea. Jordi Amat wrestled Mesut Ozil off the ball far too easily - with Wenger saying after the game that he felt it should have been a free-kick - played one into Jack Cork, and he picked out Routledge, who ran in behind Arsenal's centre-backs and slipped it past Petr Cech.
Swansea threw on Sigurdsson at half-time, whose craft in the middle of the park made all the difference as the away side attacked with far more menace.
And the Iceland international had a golden opportunity to give Swansea the lead after 65 minutes, brilliantly beating Gabriel before taking the ball round Cech - but from there he could only fire wide. It was a narrow angle but you would have backed someone of his quality to score in that situation.
Soon afterwards Sanchez rattled the bar again for Arsenal, his attempt from a free-kick came off the head of Sigurdsson and hit the woodwork before bouncing away - once more, Fabianski was well beaten.
And with the game heading into the final quarter of an hour, Swansea grabbed the winner. Sigurdsson fizzed in a wonderful free-kick from the right, and captain Williams was on hand to steer it past Cech from close range.
The Gunners pressed for an equaliser, but the Swans held on for a valuable three points.
Next up for Wenger is a trip to Tottenham on Saturday, where defeat will surely end their title hopes once and for all.
Arsenal: Cech (5), Bellerin (5), Mertesacker (4), Gabriel (4), Monreal (4), Ramsey (4), Coquelin (5), Campbell (7), Ozil (6), Sanchez (6), Giroud (5)
Subs: Walcott (5), Welbeck (5)
Swansea: Fabianski (7), Naughton (6), Amat (6), Williams (7), Kingsley (6), Cork (7), Fer (6), Ki (5), Routledge (7), Ayew (5), Gomis (5)
Subs: Fulton (5), Sigurdsson (7), Rangel (n/a)
Man of the match: Ashley Williams