By James Pearson
Last Updated: 01/01/70 1:00am
Kaiserslautern have been relegated while Werder Bremen have bagged second.
Kaiserslautern have been relegated from Die Bundesliga following a 2-2 draw with Wolfsburg, while Werder Bremen have snatched second spot.
The Red Devils needed a win to avoid the drop and things looked good after 20 minutes when Halil Altintop opened the scoring.
However, their good work was undone in the second half when Cedric Makiadi and Diego Klimowicz both netted in the space of three minutes.
Marcel Zamer set up a frantic finale when he netted in the closing stages, but they were unable to find that all-important winner.
Werder Bremen claimed second spot ahead of Hamburg with a crucial 2-1 win at the AOL Arena.
Ivan Klasnic opened the scoring, but the home side were level on the hour mark when Sergei Barbarez netted.
With the contest finely balanced Miroslav Klose broke the deadlock to give Bremen the points.
Kaiserslautern have been relegated along with Cologne and Duisburg, who finished their campaign with a goalless draw against Mainz.
Cologne went down fighting after claiming a 4-2 success over Arminia Bielefeld. Lukas Podolski, in what seems to be his last appearance for the club, netted a brace.
Podolski opened the scoring before half-time although David Kobylik levelled matters shortly after the interval.
Radomir Dalovic then cancelled out Matthias Scherz's strike, although there was still time for Podolski to net his second before Patrick Helmes added the icing on the cake.
Champions Bayern Munich ended their campaign with a thrilling 3-3 draw with Borussia Dortmund at the Allianz Arena.
Jan Koller opened the scoring just two minutes in, but Roy Makaay levelled matters just minutes later.
The contest looked over when Bastian Schweinsteiger and Michael Ballack made it 3-1, but the visitors fought back.
Philipp Degen pulled one back before Koller's second of the game ensured Dortmund left with a point.
Schalke ended their campaign with a win after a late comeback secured a 3-2 success over Stuttgart.
Former Aston Villa midfielder Thomas Hitzlsperger fired the visitors ahead, although Ebbe Sand levelled matters.
Cacau thought he had bagged the winner after 71 minutes, but two goals in the space of four minutes from Marcelo Bordon and Tomasz Waldoch turned the contest on its head.
Eintracht Frankfurt finished the campaign just three points ahead of Kaiserslautern following a 2-0 loss to Borussia Monchengladbach.
Second half goals from Oliver Neuville and Nando Rafael secured the points for the Foals.
Hannover and Bayer Leverkusen concluded their seasons with a 2-2 draw at the AWD Arena.
Per Mertesacker netted after 15 minutes, but there was little time to celebrate with Simon Rolfes scoring just a minute later.
Dimitar Berbatov put Leverkusen ahead for the first time after 39 minutes, although Chavdar Yankov's effort after half-time secured a point.
Ten-man Nurnberg concluded their campaign with a 2-1 success over ten-man Hertha Berlin.
Robert Vittek fired Nurnberg ahead and things went from bad to worse when Josip Simunic was sent off for collecting his second yellow card of the contest.
However, the visitors responded and leveled the contest through Pal Dardai.
Nurnberg were then a man down when Jan Polak was given his marching orders, although there was still time for Ivan Saenko to snatch a last-gasp winner.
Click below for match summaries:
Bayern Munich 3-3 Borussia Dortmund
Cologne 4-2 Arminia Bielefeld
Eintracht Frankfurt 0-2 Borussia Monchengladbach
Hamburg 1-2 Werder Bremen
Hannover 2-2 Bayer Leverkusen
Duisburg 0-0 Mainz
Nurnberg 2-1 Hertha Berlin
Schalke 3-2 Stuttgart
Wolfsburg 2-2 Kaiserslautern