Scorers: Aston Villa - Benteke (76); Arsenal - Wilshere (34), Giroud (35)
Wilshere put Arsenal ahead in the 34th minute at Villa Park and then provided the pass for Giroud to double the lead just a minute later.
Villa rallied late on and pulled one back with Christian Benteke’s first goal in four months, but they could not force an equaliser. The hosts overcame a sickening injury to defender Nathan Baker and were enjoying a strong spell when the Gunners hit them with their double blow.
But after that the game seemed to be drifting away from Paul Lambert’s men until Benteke, who had again been looking ineffective, suddenly rediscovered his scoring touch after 76 minutes.
The closing stages were scrappy and frantic - amid which Alex Oxlade-Chamberlain made his long-awaited Arsenal comeback – but there were no further goals.
Arsenal’s record of having not lost at Villa Park since 1998 was maintained but Villa’s finish, despite a run of just one win in seven games, will offer encouragement.
Baker was carried off on a stretcher wearing an oxygen mask after being struck in the face by a Serge Gnabry shot. He suffered mild concussion and initial reports suggested the problem was not too serious.
Arsenal looked comfortable in the early stages, with Bacary Sagna finding space down the right and delivering some uncomfortable balls into the Villa box.
Giroud glanced one opportunity wide from a header as the Gunners threatened to take an early grip. It felt like a night when Villa would have to make the most of any opportunity that came their way and it did seem wasteful when Fabian Delph dragged an effort wide from the edge of the area.
Play was then interrupted for around six minutes after Baker took a long-range shot from Gnabry flush in the face.
The 22-year-old hit the ground and did not move for some time as medics rushed to his assistance. Baker’s eventual departure – he was replaced by Leandro Bacuna – did not adversely affect Villa and they responded positively to open the game up.
Karim El Ahmadi could have given the hosts the lead when he volleyed over from a Delph cross. Nacho Monreal was booked for cynically hacking down Gabriel Agbonlahor as Villa continued to press, but the Gunners soon put an end to their aspirations.
Mesut Ozil released Monreal with a good ball down the left and the Spaniard’s pass inside was well controlled and clinically despatched into the bottom corner by Wilshere. Play had barely restarted when Delph was caught in possession and Wilshere lofted a precise ball into the path of Giroud.
The Frenchman, returning to the side after two games out, made no mistake as he fired his 12th goal of the season into the roof of the net. Villa were stunned by the double blow and it was not until the second half, after a talking to by Lambert, that they started to threaten again.
Bacuna got in range on the edge of the area but shot straight at Wojciech Szczesny before the same player fired a free-kick straight into the wall.
Benteke wanted a penalty after tangling with Koscielny but referee Neil Swarbrick played on.
Monreal burst forward for Arsenal and cut inside to shoot and was only denied by a superbly-timed tackle by Villa captain Ron Vlaar. Monreal was hurt in the challenge and was replaced by Kieran Gibbs after failing to run off the knock.
Brad Guzan saved a low shot from Santi Cazorla and Szczesny was in action after Ashley Westwood struck a powerful 25-yard shot in his direction.
Giroud had a chance to put the game beyond all doubt for Arsenal with 17 minutes remaining, but Vlaar did well to close him down and he could only sidefoot wide. Lambert tried to cajole his side into action but Benteke’s shot on the turn went well wide.
It seemed like being another miserable night for the Belgian but he suddenly found his touch as he dived to meet a wicked bouncing cross from Matt Lowton and head home at the far post. The game burst into life and Tomas Rosicky was caught in the face by a hand from Agbonlahor in an aerial challenge. Tempers then flared as Benteke ran into two Arsenal tackles.
Delph tried his luck from 30 yards but Szczesny dealt with his low shot.
Rosicky, who had only been on the field 15 minutes, had to go off for further treatment and Oxlade-Chamberlain came on to see Arsenal through.
Aston Villa: Guzan, Vlaar, Baker (Bacuna 21), Clark, Lowton, El Ahmadi (Weimann 74), Delph, Westwood, Luna, Agbonlahor, Benteke. Subs Not Used: Helenius, Albrighton, Steer, Sylla, Tonev
Arsenal: Szczesny, Sagna, Mertesacker, Koscielny, Monreal (Gibbs 66), Wilshere, Flamini, Gnabry (Rosicky 69), Ozil, Cazorla, Giroud, Rosicky (Oxlade-Chamberlain 86).
Subs Not Used: Podolski, Fabianski, Jenkinson, Park