Aaron Ramsey was on target for Arsenal in their Champions League clash at Borussia Dortmund.

Story highlights

Arsenal claims victory at Borussia Dortmund with Aaron Ramsey goal

Messi inspires Barcelona to qualification

Atletico Madrid cruises through to next stage

Chelsea thrashes Schalke 3-0 at Stamford Bridge

CNN  — 

Arsenal means business.

A fortnight ago the critics were wondering if the Gunners could last the pace – now that doubt looks to have been quashed – and in some style.

A 1-0 win over last year’s Champions League finalist Borussia Dortmund proved Arsenal can mix it with Europe’s elite when it really matters.

Having lost the home fixture against the German side in north London two weeks ago, victory was essential for Arsenal to keep hold of its own destiny.

And it duly obliged thanks to Aaron Ramsey’s second half winner – his 11th goal in 16 games – not bad for a player who had only mustered five in 91 apperances for the club over the past two years.

“I was impressed mostly by our focus because we were under consistent pressure from the first to the last minute,” Arsenal manager Arsene Wenger told Sky Sports.

“Nevertheless, we created chances and we could have scored a second.

“A year ago, I thought it would be difficult for Ramsey to score goals but he’s developed tremendously and that’s a huge credit to him.”

Read: Bayern breeze into last-16

Ramsey has enjoyed a stunning season – taking the English Premier League by storm.

The Wales international has been a revelation at the heart of the Arsenal midfield and his latest strike secured one of the club’s most impressive European victories of modern times.

Arsenal arrived in Germany to face a Dortmund side which had made its most successful start to a league season since 2010/11.

Having won all eight of its home games this season, including the victory in the German Super Cup, Dortmund roared out the traps at their traditional breakneck speed.

But despite dominating possession, the German side failed to find the breakthrough.

Read: Lloris life ‘put at risk’

Armenia international Henrikh Mkhitaryan should have done better in the first half after being played through on goal but his effort sailed wide of the post.

Dortmund pushed forward again after the interval but it was Arsenal which struck the killer blow with 62 minutes on the clock.

Mesut Ozil swung the ball into the penalty area and after Olivier Giroud had managed to flick the ball on, Ramsey stole in to nod home from close range.

Dortmund huffed and puffed as they searched for an equalizer but only a superb save by Roman Weidenfeller denied Ramsey a second as Arsenal broke at speed.

Per Mertesacker sent a header just over the crossbar as the visiting side looked to double its advantage.

And although Dortmund pushed forward late on, it was unable to find the equalizer it so badly craved.

“We dominated, we worked, we had good runs and we did a lot of things right. We played good football and it was not boring,” said Dortmund manager Jurgen Klopp.

“But we lacked the finish. We should have done more from our possession.”

Read: Searching for the Holy Grail

Dortmund now faces a fierce fight to qualify for the next stage after Napoli recorded a 3-2 win over Marseille.

The Italian side sits second, three points clear of Dortmund, with the two teams scheduled to meet in Germany on November 26.

Gonzalo Higuain scored twice and Gokhan Inler was also on target for Napoli, which is level on nine points with Arsenal .

Read: Is Roma the best in Europe?

Elsewhere, Lionel Messi ended his goal drought with a double in Barcelona’s 3-1 win over Milan.

The victory books Barcelona’s place in the last 16 with two games to spare.

Messi fired home the opener from the penalty spot before Sergio Busquets headed a second.

Milan, which sits second in the group, did pull a goal back when Barca defender Gerard Pique inadvertently diverted Kaka’s cross into his own net.

But Messi sealed the win seven minutes from time with a classy finish to ensure Barca’s place in the knockout phase for the 10th year in a row.

Read: Tax for Zlatan?

Ajax is still in the mix in Group H following a 1-0 win over Scottish champion Celtic in Amsterdam.

Lasse Schone scored the only goal of the game for the Dutch side, which has taken four points from four games – one fewer than Milan.

Chelsea looks in good shape to qualify from Group E following a 3-0 win over German side Schalke.

Samuel Eto’o scored twice and Demba Ba was also on target as Chelsea bounced back from its weekend defeat in the Premier League at Newcastle.

“I think it was good response but of course the first 15 minutes were difficult,” Chelsea manager Jose Mourinho told Sky.

“We were a team without big maturity and stability after the defeat on Sunday. After that we played very well and kept possession in a comfortable way and after the first goal we played well.”

Read: Milan goes for brainpower

Swiss side Basel is still in contention to qualify after it stole a late equalizer to draw 1-1 with Steaua Bucharest.

Basel is in third place but just one point behind Schalke with two games remaining.

In Group G, Atletico Madrid qualified for the next stage with a comfortable 4-0 win over Austria Vienna.

Miranda gave Atletico an early lead before strikes from Raul Garcia and Filipe Luis sent the home side into the break with a three-goal cushion.

Diego Costa added a fourth after the interval as Atletico equalled Bayern Munich’s feat of qualifying for the last-16 with four consecutive victories.

Zenit St. Petersburg sits second in the table following its 1-1 draw against Porto in the day’s early game.