Franck Ribery, eluded the challenge of Mats Hummels and rolled a delicate shot past Roman Weidenfeller to give Bayern their fifth European crown.
It was a moment of long-awaited deliverance for both Bayern and Robben after defeats for the Bavarians in the final of the competition in 2010 and again in 2012, when they cruelly lost a penalty shoot-out to Chelsea on home soil.
"My whole career went through my mind when I scored. It is such a special feeling you can't describe it," said Robben.
"You don't want to be a loser every time, coming always in second place. We deserved to win it. I have dreamt about it many times."
Robben had set Bayern on the way to victory after an hour of the first all-German final when he teed up Mario Mandzukic for the opener, only for Ilkay Gundogan to equalise from the penalty spot in the 68th minute.
Victory made Bayern coach Jupp Heynckes only the fourth manager to win the trophy with two different clubs after a 1998 triumph with Real Madrid, as he prepares to step aside for incoming successor Pep Guardiola.
"We were favourites, but you could feel the burden in the first 20 minutes," said Heynckes.
"Little by little, we got into the game and we played much better after the break. We have worked incredibly hard for this success."
Having already claimed the German title, Bayern will now look to complete an unprecedented treble by beating VfB Stuttgart in the German Cup final next weekend.
There was no second title for 1997 winners Dortmund but Jurgen Klopp's side more than played their part on a night of gripping drama in front of 86,298 fans at the home of English football.
"First of all, congratulations to Bayern, as they won. After the game you have to respect the result," said Klopp.
"We deserved to be in the final. We showed this tonight. That is not the most important thing but it is important."
The player who had generated the most column inches in the weeks leading up to the game was in the stands at kick-off, a hamstring injury having denied Mario Goetze a farewell appearance for Dortmund before his 37 million euros (£31.7 million, $47.8 million) move to Bayern.
His transfer was the latest show of strength from a side who romped to the Bundesliga title by a record-breaking 25-point margin, but Bayern were left looking like the underdogs as Dortmund flew out of the blocks.
Bayern goalkeeper Manuel Neuer had to save from Robert Lewandowski, Jakub Blaszczykowski, Marco Reus and Sven Bender, before Bayern finally came to life when Dortmund goalkeeper Weidenfeller tipped a Mandzukic header onto the bar.
The best chances of the first half both fell to Robben.
On the half hour, Thomas Mueller's pass sent him clean through on goal but the angle was prohibitive for a left-footed player and Weidenfeller rushed out swiftly to make a sprawling save.
The Dutchman found himself with only the goalkeeper to beat again moments before half-time when the ball fell kindly for him in a tussle with Hummels, but Weidenfeller stood up bravely and blocked with his face.
In between, Neuer produced a superb last-ditch block to thwart Lewandowski, who had deftly rolled Jerome Boateng from a Reus pass, as the play passed from one end to the other at breathless speed.
It looked as if another major final was set to pass Robben by but on the hour he atoned for his earlier misses by creating the opening goal.
Ribery rolled a pass towards the byline and Robben evaded the offside trap by a matter of inches before nudging the ball beyond Weidenfeller and crossing for Mandzukic to hook home from a yard.
Dortmund might have been forgiven for feeling deflated given their first-half exertions but instead they drew level.
Dante was penalised for an untidy high foul on Reus inside the area and Gundogan steered his penalty into the bottom-right corner to send the hordes of yellow-shirted fans behind Neuer's goal leaping from their seats.
Moments later, Dortmund were indebted to a breathtaking piece of defending from Neven Subotic, who slid in to hook Mueller's goal-bound shot off the line as Robben closed in for a tap-in.
But Bayern continued to push, Weidenfeller repelling fierce strikes from David Alaba and Bastian Schweinsteiger, before Robben tiptoed through the Dortmund defence to score a famous late winner.