German Bundesliga
Bor Dortmd4Werder Bremen3

Borussia Dortmund v Werder Bremen

Borussia Dortmund defender Marc Bartra
Bartra was given a rapturous reception by the Dortmund fans and his team-mates after the final whistle

Defender Marc Bartra returned to action for the first time since being injured in the attack on Borussia Dortmund's team bus as his side gained entry to the Champions League group stage.

Bartra, 26, had surgery on his right hand and wrist after the blast before a Champions League tie with Monaco.

He played 90 minutes as Dortmund edged Werder Bremen 4-3 to beat Hoffenheim to third place in the Bundesliga.

Hamburg avoided a relegation play-off with a late win over Wolfsburg.

Bartra makes Dortmund return

Spain centre-back Bartra, who joined Dortmund from Barcelona last June, was the only player to receive serious injuries in the blast on April 11.

Three devices containing pieces of metal exploded shortly after Dortmund left their hotel to travel to the home leg of their quarter-final tie against the Ligue 1 side.

Police in Germany have charged a man suspected of being behind the attack. Prosecutors say he was a market trader hoping to make money if the price of shares in the team fell.

Borussia Dortmund defender Marc Bartra
Bartra (left) was named on the bench for last weekend's game against Augsburg but did not come on

Aubameyang seals third place - and top scorer prize

Dortmund started the final day of the Bundesliga season level on points with fourth-placed Hoffenheim, knowing a victory against eighth-placed Bremen would seal third because of their superior goal difference.

They secured the three points - but it required an 89th-minute penalty from top scorer Pierre-Emerick Aubameyang to defeat an away side that had led twice.

Aubameyang, who also scored a spectacular volley to put Dortmund 2-1 ahead, was crowned the Bundesliga's top scorer after taking his tally to 31 goals for the season.

Marco Reus also netted twice as Bremen, who scored through Zlatko Junuzovic, Fin Bartels and Max Kruse, missed out on European qualification.

Hoffenheim drew 0-0 against Augsburg and will go forward to the Champions League play-offs in order to gain entry to the group stage.

Pierre-Emerick Aubameyang
Aubameyang pipped Bayern Munich's Robert Lewandowski by one goal to finish top scorer in the Bundesliga

Birthday boy scores to save Hamburg

Hamburg are the only club to have never been relegated from the Bundesliga since the league was founded in 1963 - and they made sure that run continued with a dramatic 2-1 win against relegation rivals Wolfsburg.

Hamburg started the final day of the season fourth bottom, knowing they had to beat Wolfsburg - the team directly above them - to avoid a two-legged play-off against the side that finishes third in Bundesliga II.

Wolfsburg took the lead on a tense afternoon when Robin Knoche headed in after 23 minutes, before Filip Kostic fired in Hamburg's equaliser nine minutes later.

The home side knew they needed a winner to survive and it eventually arrived when substitute Luca Waldschmidt - on his 21st birthday - kept them up with his first goal of the season.

It sparked ecstatic scenes in the Volksparkstadion, with thousands of Hamburg fans pouring onto the pitch to celebrate at the final whistle.

Hamburg celebrate Bundesliga survival
Hamburg players mob Luca Waldschmidt after his vital goal
Hamburg celebrate Bundesliga survival
Jubilant Hamburg supporters invaded the pitch after the final whistle
Hamburg celebrate Bundesliga survival
Hamburg's Twitter account reacted to the club's survival

Line-ups

Bor Dortmd

  • 38Bürki
  • 28Ginter
  • 25PapastathopoulosBooked at 11mins
  • 5Bartra
  • 8SahinBooked at 62minsSubstituted forCastroat 72'minutes
  • 37DurmSubstituted forPulisicat 45'minutes
  • 7DembéléBooked at 61minsSubstituted forBenderat 90+3'minutes
  • 23KagawaBooked at 87mins
  • 13Guerreiro
  • 17Aubameyang
  • 11Reus

Substitutes

  • 1Weidenfeller
  • 6Bender
  • 9Mor
  • 18Rode
  • 22Pulisic
  • 27Castro
  • 29Schmelzer

Werder Bremen

  • 42Wiedwald
  • 13VeljkovicBooked at 90mins
  • 26SanéSubstituted forEggesteinat 86'minutes
  • 18Moisander
  • 6Delaney
  • 23Gebre SelassieSubstituted forGnabryat 45'minutes
  • 27GrillitschSubstituted forBargfredeat 72'minutesBooked at 88mins
  • 16Junuzovic
  • 20García
  • 22BartelsBooked at 58mins
  • 10Kruse

Substitutes

  • 7Kainz
  • 14Pizarro
  • 29Gnabry
  • 33Drobny
  • 35Eggestein
  • 44Bargfrede
Referee:
Günter Perl
Attendance:
81,360

Match Stats

Home TeamBor DortmdAway TeamWerder Bremen
Possession
Home63%
Away37%
Shots
Home28
Away11
Shots on Target
Home11
Away5
Corners
Home9
Away3
Fouls
Home15
Away17

Live Text

Match ends, Borussia Dortmund 4, SV Werder Bremen 3.

Full Time

Second Half ends, Borussia Dortmund 4, SV Werder Bremen 3.

Raphael Guerreiro (Borussia Dortmund) wins a free kick in the defensive half.

Foul by Fin Bartels (SV Werder Bremen).

Substitution

Substitution, Borussia Dortmund. Sven Bender replaces Ousmane Dembélé.

Booking

Milos Veljkovic (SV Werder Bremen) is shown the yellow card for a bad foul.

Pierre-Emerick Aubameyang (Borussia Dortmund) wins a free kick in the defensive half.

Foul by Milos Veljkovic (SV Werder Bremen).

Attempt saved. Thomas Delaney (SV Werder Bremen) header from the left side of the box is saved in the top left corner. Assisted by Zlatko Junuzovic.

Foul by Marc Bartra (Borussia Dortmund).

Thomas Delaney (SV Werder Bremen) wins a free kick on the right wing.

Goal!

Goal! Borussia Dortmund 4, SV Werder Bremen 3. Pierre-Emerick Aubameyang (Borussia Dortmund) converts the penalty with a right footed shot to the bottom left corner.

Booking

Philipp Bargfrede (SV Werder Bremen) is shown the yellow card for a bad foul.

Penalty Borussia Dortmund. Christian Pulisic draws a foul in the penalty area.

Penalty conceded by Philipp Bargfrede (SV Werder Bremen) after a foul in the penalty area.

Booking

Shinji Kagawa (Borussia Dortmund) is shown the yellow card for a bad foul.

Foul by Shinji Kagawa (Borussia Dortmund).

Fin Bartels (SV Werder Bremen) wins a free kick in the attacking half.

Substitution

Substitution, SV Werder Bremen. Maximilian Eggestein replaces Lamine Sané because of an injury.

Foul by Sokratis (Borussia Dortmund).

Max Kruse (SV Werder Bremen) wins a free kick in the attacking half.

Attempt missed. Marco Reus (Borussia Dortmund) left footed shot from the left side of the six yard box is close, but misses to the left.

Foul by Marc Bartra (Borussia Dortmund).

Max Kruse (SV Werder Bremen) wins a free kick in the defensive half.

Delay over. They are ready to continue.

Delay in match Marco Reus (Borussia Dortmund) because of an injury.

Corner, SV Werder Bremen. Conceded by Marc Bartra.

Foul by Matthias Ginter (Borussia Dortmund).

Zlatko Junuzovic (SV Werder Bremen) wins a free kick in the defensive half.

Corner, Borussia Dortmund. Conceded by Lamine Sané.

Corner, Borussia Dortmund. Conceded by Milos Veljkovic.

Attempt blocked. Matthias Ginter (Borussia Dortmund) header from the centre of the box is blocked. Assisted by Marco Reus with a cross.

Corner, Borussia Dortmund. Conceded by Felix Wiedwald.

Attempt saved. Shinji Kagawa (Borussia Dortmund) right footed shot from outside the box is saved in the bottom left corner. Assisted by Christian Pulisic with a headed pass.

Attempt saved. Christian Pulisic (Borussia Dortmund) right footed shot from the right side of the box is saved in the bottom right corner.

Goal!

Goal! Borussia Dortmund 3, SV Werder Bremen 3. Marco Reus (Borussia Dortmund) converts the penalty with a right footed shot to the top right corner.

Penalty Borussia Dortmund. Marco Reus draws a foul in the penalty area.

Penalty conceded by Serge Gnabry (SV Werder Bremen) after a foul in the penalty area.

Substitution

Substitution, SV Werder Bremen. Philipp Bargfrede replaces Florian Grillitsch.

Substitution

Substitution, Borussia Dortmund. Gonzalo Castro replaces Nuri Sahin.

goal

As It Stood

TeamPWDLFAGDPts
1Bayern Mun34257289226782
2RB Leipzig34207766392767
3Bor Dortmd341810672403264
4Hoffenheim341614464372762
51. FC Köln34121395142949
6Hertha BSC34154154347-449
7SC Freiburg34146144260-1848
8Werder Bremen34136156164-345
9B Gladbach34129134549-445
10Schalke341110134540543
11Eintracht Frankfurt34119143643-742
12Bayer Levkn34118155355-241
13FC Augsburg34911143551-1638
14Hamburger SV34108163361-2838
15Mainz 0534107174455-1137
16VfL Wolfsburg34107173452-1837
17FC Ingolstadt3488183657-2132
18Darmstadt 983474232863-3525
View full German Bundesliga table

Top Stories