Dortmund continue German misery for Real Madrid Dortmund's Marcel Schmelzer celebrates his decisive goal with Kevin Grosskreutz as the Germans beat nine-time champions Real Madrid 2-1. Borussia Dortmund beat Real Madrid 2-1 at home to leapfrog the Spaniards at the top of Group D Schalke complete fine week for German teams as they inflict Arsenal's first group stage defeat at home since 2003 Manchester City lose 3-1 to Ajax in Amsterdam as coach Roberto Mancini admits mistakes Seven-time champions Milan maintain miserable run with 1-0 defeat in Malaga (CNN) -- Borussia Dortmund secured a memorable week for German teams in the UEFA Champions League as they won 2-1 at home to Real Madrid. With Schalke defeating Arsenal 2-0 in London, and Bayern Munich triumphing at Lille on Tuesday, all three of the Bundesliga's teams recorded significant victories this week. Few were more celebrated than the success in the Westfalenstadion where the hosts leapfrogged their opponents to take top spot in Group D at the halfway stage. "The feeling is amazing; it was a sensational evening for us and truly the stuff dreams are made of," Dortmund coach Jurgen Klopp told UEFA's official website. Madrid's sole two defeats in their last 16 Champions League matches have both come in Germany, with the Spaniards having lost the first leg of their semifinal at Bayern Munich in April. Despite their record tally of nine European crowds, Real have continually struggled on German soil - losing 17 times in 24 matches with their only win dating back to 2000. The German champions' victory means that Manchester City, who lost 3-1 against Ajax in Amsterdam, need a sporting miracle if the Premier League title holders are to reach the knock-out stages. City led through Samir Nasri only for Ajax captain Siem de Jong to drill home a superb equalizer on the stroke of half-time, before second half goals from Niklas Moisander and Christian Eriksen sealed an unexpected win. "It is my fault, I didn't prepare well for the game and I take the blame," said City's Italian coach Roberto Mancini. I thought in one way and it was different. When you prepare in one way and it is a different game it is difficult. In Dortmund, Poland striker Robert Lewandowski opened the scoring after 36 minutes before Cristiano Ronaldo inevitably drew the Spaniards level with his 14th goal in his last 11 Champions League games -- only for Marcel Schmelzer, who had been an injury doubt before the game, to settle the tie after 64 minutes. In addition to a celebrated victory, Dortmund officials would have been delighted that the match passed without incident following the violent clashes that dogged the club's Ruhr derby defeat at home to league rivals Schalke on Saturday. 180 arrests were made with 11 people injured, eight of whom were police officers, after rival fans clashed, but the only exuberance on Wednesday night were the scenes of celebration as Dortmund maintained their unbeaten run in Group D. " (This) was a completely different game to the derby against Schalke," Dortmund defender Mats Hummels told uefa.com. It was a fantastic game, with a fantastic atmosphere and a perfect result. We won't allow this success to go to our heads. We still haven't won anything yet. Meanwhile, Schalke won 2-0 at the Emirates thanks to late goals from Klaas Jan-Huntelaar and Ibrahim Afellay, as Arsenal lost a Champions League group game at home for the first time in nine years. In the day's other Group B game, French champions Montpellier showed their inexperience as they let slip a 1-0 lead at home to Olympiakos before Kostas Mitroglou's goal in stoppage time earned the Greeks a 2-1 win. For us, these three points are like gold. They are a huge confidence boost," said midfielder Giannis Maniatis. The most goals of the night came in Portugal where Porto won 3-2 at home to Ukraine's Dynamo Kiev thanks to Silvestre Varela's stunning strike and a brace from Jackson Martinez. The victory maintained the Portuguese champions' 100% start in Group A, where Zlatan Ibrahimovic grabbed his 11th goal in as many European games as Paris Saint Germain won 2-0 against Dinamo Zagreb in Croatia. In Group C, the miserable form of Italy's seven-time champions continued as Milan went down 1-0 in Spain against high-flying Malaga. Having missed a penalty in the first half, Joaquin settled the tie in the second period as Milan, who lie 16th in Italy's Serie A, continue to rebuild following a period of transition. Earlier in the day, Zenit St Petersburg picked up their first points of the group as the Russians won 1-0 at home to Belgians Anderlecht.