A late Olly Barkley penalty helped give Racing Metro an unlikely Heineken Cup victory over Munster at a wet and soggy Stade de France.
Simon Zebo looked to have earned Munster the points with a 73rd-minute solo try but, when Conor Murray was penalised for holding on inside his 22 with three minutes left, Barkley kept his nerve to put Racing ahead.
Mirco Bergamasco then struck another penalty in the final minute to give the French club a famous first home win in the Heineken Cup.
Sean Dougall's 15th-minute try had helped Munster take a 10-0 lead in this Pool 1 opener, while Ronan O'Gara passed 1,300 Heineken Cup points as Munster looked in complete control.
But when Doug Howlett failed to collect a low pass from O'Gara on 31 minutes, the home scrum-half, Maxime Machenaud, chased through for a try.
Having converted that try, Barkley, making his first start at fly-half after signing from Bath, then slotted over a penalty to give Racing a 13-10 half-time lead.
After a scrappy start to the second half, Racing's latest signing struck another huge penalty to extend their advantage
But, just when it looked like Racing might hold on, Zebo scored with seven minutes left and Ian Keatley's conversion from wide out on the left put Munster 17-16 in front.
However, two late infringements cost Munster dear as Racing stole the points.
Six of the Munster side were making their first starts in Europe but they showed no fear from the outset – Keatley's chip through forcing Benjamin Fall to fumble on his own line.
That gave Munster a five-metre scrum and when Racing were penalised under the posts, O'Gara had the simple task of slotting over after nine minutes.
Six minutes later, Munster's early dominance was rewarded further as Dougall skipped home under the posts.
O'Gara converted, but Barkley replied with a monster penalty to make it 10-3 after 19 minutes.
Munster's hunger was in evidence when they sacked Barkley behind his own posts to earn another five-metre scrum, and when Peter O'Mahony was held up on the line, Paul O'Connell thought he had done enough to earn a second try. It went upstairs though, and the video showed O'Connell dropped the ball as he was driven over.
Racing were struggling to get out of their own half, but they got right back into the game on 31 minutes after O'Gara's pass was spilled by Howlett.
Jacques Cronje kicked towards the try line and Racing's scrum-half Machenaud was given the benefit of the doubt after his messy touchdown.
Suddenly it was 10-10, and Munster suffered another blow when O'Gara was forced off with a hamstring injury, with Denis Hurley coming on at full-back and Keatley moving to fly-half.
It nearly got worse when Casey Laulala's clearance was charged down inside his 22. Keatley reacted quickly to save the day, though the home fans claimed Karim Ghezal was taken out by Murray as the Racing man closed in on the loose ball.
Barkley added another penalty as Racing somehow found themselves 13-10 up at half-time.
The second half was incredibly scrappy in horrendous conditions, but after Barkley extended Racing's lead, out of nowhere Zebo slalomed through the Racing defence to score, profiting from Howlett's quickly taken lineout.
Keatley's fine conversion from the left took the province within touching distance of victory, but Murray's infringement proved crucial as Barkley kept his cool before Bergamasco's last-minute penalty sealed the triumph.
Racing Metro B Fall (V Vakatawa, 66); J Jane, M Bergamasco, J Martin Hernandez, J Saubade; O Barkley, M Machenavel; A Lo Cicero (E Ben Arous, 67), D Szarzewski (T Bianchin, 70), L Ducalcon, K Gezalm, F Carl Van der Merwe (F Metz, 61), A Battut (C Gerondeau, 80), J Cronje (capt), S Matadigo (B Le Roux, 61).
Munster I Keatley; D Howlett (capt), C Laulala, J Downey, S Zebo, R O'Gara (D Hurley, 34), C Murray; D Kilcoyne (M Horan, 73), D Varley (M Sherry, 55), B J Botha; B Holland, P O'Connell (D O'Callaghan, 64); D Ryan, S Dougall (P Butler, 74), P O'Mahoney.
Referee G Garner (London).
Pens: Barkley 4, Bergamasco
Tries: Dougall, Zebo
Cons: O'Gara, Keatley