United seal final date with Liverpool
Louis van Gaal's men put in an assured performance against the UEFA Champions League holders, going ahead in the 21st minute when Ashley Young finished off a well-crafted move.
Gareth Bale's penalty levelled matters six minutes later before Young's inviting cross crept in off the far post as United went into the break deservedly in the lead.
Although Real improved in the second period, substitute Javier Hernandez headed in a third 10 minutes from time as United sealed their final berth.
In the other match in Group A, Inter beat Roma 2-0 thanks to a goal in each half from Nemanja Vidic and Yuto Nagatomo, a result which sent Walter Mazzarri's men temporarily top of the standings until United's victory.
Liverpool's place in the final was assured after Olympiacos defeated Manchester City 5-4 on penalties following a 2-2 draw in normal time.
Stevan Jovetic netted his fifth goal of the tournament in the 35th minute to hand City the initiative, but that was soon squandered as Dimitrios Diamantakos equalised two minutes later.
Aleksandar Kolarov's penalty early in the second half made it 2-1, but once again Diamantakos brought the Greek outfit level, before Olympiacos held their nerve in the shootout.
Ivan Rakitic and Jeremy Mathieu made their Barcelona debuts as Luis Enrique's men needed Xavi's second-half penalty to earn a 1-1 draw with Nice, after the hosts had gone ahead through Dario Cvitanich, also from the spot.
In the Emirates Cup, Radamel Falcao made his comeback from a serious knee injury in Monaco's 2-2 draw with Valencia.
The Colombia international had not featured since January but came off the bench to replace Dimitar Berbatov with 18 minutes to go as Monaco claimed a point through Lucas Ocampos' goal 10 minutes from time.
Elsewhere in the tournament, Yaya Sanogo was the star for Arsenal, scoring four times in a 5-1 thrashing of Portuguese champions Benfica.
Having been thumped 4-1 by Legia Warsaw in the UEFA Champions League third qualifying round first leg on Wednesday, Celtic's torrid form continued as they went down 6-1 against Tottenham.
Ronny Deila's youthful side were soundly beaten with Efe Ambrose seeing red for the second time in four days.
In the Schalke Cup, Malaga defeated Newcastle United 3-1, while West Ham beat the hosts 7-6 on penalties after a goalless draw at the Veltins Arena.
Crystal Palace went down 3-2 at Championship side Brentford and Premier League newcomers Burnley triumphed 1-0 at Lancashire rivals Blackpool.
Cardiff City and Wolfsburg played out an entertaining six-goal draw - the Welsh outfit coming from two goals down to lead before Ivica Olic earned a draw six minutes from time.
Leicester City drew 1-1 with Preston North End, Queens Park Rangers thrashed Shamrock Rovers 4-0 and Stoke City's clash with Burton Albion ended goalless.
Rennes beat Freiburg 3-1 while Saint Etienne defeated Ligue 1 rivals Lens 1-0 as Marseille ran out 3-1 winners over Chievo.
Wayne Routledge scored twice as Swansea City defeated Reading 3-1, Aston Villa were trounced 4-1 by Groningen and Villarreal triumphed 2-0 over Middlesbrough.
Elsewhere, Toulouse beat Athletic Bilbao 2-0, UEFA Europa League champions Sevilla overcame Fenerbahce 2-0, Napoli were victors over PAOK by the same scoreline and Sampdoria saw off Eintracht Frankfurt 4-2.