Sebastien Buemi won the second of Formula E's two Berlin races after Felix Rosenqvist missed out on a double victory because of a pitstop error.
Rosenqvist finished first on the road, 2.9s clear of of Buemi, but picked up a 10-second time penalty for an unsafe release during the car swaps involving his own Mahindra team-mate Nick Heidfeld.
While the Swedish driver lost out to Buemi, he maintained enough of a gap over Lucas di Grassi to finish second.
Rosenqvist led the race from beginning to end, after a dynamite start launched him into a two-second lead on the first lap.
Buemi regrouped after fending off DS Virgin Racing drivers Jose Maria Lopez and Sam Bird and closed to half a second of Rosenqvist by the penultimate lap of the first stint.
A strong in-lap from Rosenqvist doubled his advantage but he almost hit disaster - and the pitting Heidfeld - when he pulled away in his second car as his team-mate came into the garage.
Rosenqvist was very briefly delayed but his in-lap had boosted his buffer to Buemi by just enough to retain the lead, although a penalty for an unsafe release seemed inevitable.
The penalty was confirmed with 13 laps remaining and Buemi, who was within a second of the leader, was happy not to attack so that Rosenqvist could maintain a big enough gap to keep second.
That restricted Buemi's title rival di Grassi to third and meant the Swiss, who was disqualified from Saturday's race, extended his points lead to 32 points.
"As soon as I saw Felix was going to get a penalty I thought I would not put any pressure on him so he would finish ahead of Lucas," said Buemi.
"It was a bit on a plate but I'm very happy."
Asked about the pitlane mix-up after the race Rosenqvist, who is now third in the drivers' championship, said "you cannot really blame anyone".
Di Grassi ended up a lonely third after an understated but professional drive up the order from seventh.
Having passed Oliver Turvey early on di Grassi then benefitted from Bird getting nudged wide by Lopez at Turn 1 after trying to pass his team-mate round the outside.
Di Grassi nailed Lopez at Turn 8 a couple of laps later, then sold Jean-Eric Vergne a superb dummy into Turn 1 in the second stint to seal third.
Vergne dropped behind Daniel Abt and Lopez over the remainder of the race to wind up sixth, ahead of a frustrated Bird and muted Nico Prost.
Oliver Turvey and a charging Nick Heidfeld, who started last, completed the points finishers after ninth-placed runner Jerome d'Ambrosio picked up a drivethrough penalty for not adhering to the minimum pitstop time.
Mitch Evans had looked set to add to Jaguar's points tally but finished 17th of the 18th runners at the flag after a problem with his car swap.
RACE TWO RESULTS:
|3||Lucas di Grassi||Abt||ABT Schaeffler||56m13.017s|
|4||Daniel Abt||Abt||ABT Schaeffler||56m15.786s|
|5||Jose Maria Lopez||Virgin||DS Virgin||56m22.479s|
|7||Sam Bird||Virgin||DS Virgin||56m24.114s|
|9||Oliver Turvey||NextEV||NEXTEV TCR||56m37.104s|
|11||Antonio Felix da Costa||Andretti||Andretti||56m46.212s|
|12||Nelson Piquet Jr.||NextEV||NEXTEV TCR||56m46.594s|
|2||Lucas di Grassi||125|
|7||Jose Maria Lopez||50|
|10||Nelson Piquet Jr.||33|
|15||Antonio Felix da Costa||10|