The Gunners desperately lacked urgency in a drab first half but Pierre-Emerick Aubameyang almost provided a moment of decisive ingenuity when his volley struck the outside of the post.
Bernd Leno was rarely troubled in Arsenal’s goal but for far too long Mikel Arteta’s side offered precious little going forwards, with little of note threatening Villarreal until Nicolas Pepe’s flashed effort just after the break.
Arsenal came agonisingly close to a winner in the final stages as Aubameyang’s header hit the post but the pressure came to no avail and Unai Emery’s side will now face Manchester United in the final in Gdansk.
Here our are Arsenal player ratings:
Bernd Leno - 6: Was rarely troubled but saved well when required, tipping over Chukwueze’s effort early in the first half.
Hector Bellerin - 5: Struggled to match the pace of the game and was caught out frequently in the first half. Improved markedly after the break and set up Aubameyang’s header against the woodwork.
Rob Holding - 6: Solid at the centre of defence, stifling the threat of Moreno for much of the game.
Pablo Mari - 6: Also performed consummately, helping to cover Tierney as fatigue set in, and largely suppressed Villarreal’s front three.
Kieran Tierney - 6: Replaced Xhaka in the starting line-up at late notice and performed well, making dangerous runs forwards. Was aided by an early injury to Chukwueze.
Thomas Partey - 4: Was left very isolated in front of the defence and the pressure told in the second half, with several sloppy passes.
Emile Smith Rowe - 5: Linked play nicely and came close to scoring with a delicate chip in the second half, but couldn’t pick out the right final ball.
Martin Odegaard - 5: Struggled to cast a noticeable influence on the game and a sloppy mistake in possession almost gifted Moreno a goal in the second half.
Bukayo Saka - 5: Did not quite provide the same electric threat as usual but admittedly had little to aim at in the box.
Pierre-Emerick Aubameyang - 6: Struck the post with a vicious volley in the first half and came agonisingly close with a header in the dying stages but was left isolated for much of the game otherwise.
Nicolas Pepe - 6: Perhaps Arsenal’s greatest threat going forwards, almost scoring with a driven shot just after the break, and his jinking runs caused Villarreal several problems.
Join our new commenting forum
Join thought-provoking conversations, follow other Independent readers and see their replies