In a rematch of the climax to last year's European season, Olympiacos pulled clear of CSKA Moscow in the first quarter and eventually won 69-52.
Real then came back from nine points down in the last quarter to overpower arch-rivals Barcelona 74-67 in the other semi-final.
"We played great defence all the way and that helped us to beat a really tough opponent," Olympiacos captain Vassilis Spanoulis told reporters. "After a very hard season we are back in the final."
Strong defending by forward Kyle Hines helped the Greek side thwart a second-half comeback attempt by CSKA and they easily advanced to the championship match for a second straight year.
Six-times winners CSKA were trying to avenge last year's defeat in the final in Istanbul where they blew a 19-point lead in the second half and lost to a game-winning shot at the buzzer by Georgios Printezis.
CSKA's Sonny Weems, formerly of the NBA's Toronto Raptors, and Olympiacos duo Pero Antic and Hines led all scorers with 13 points each.
"I haven't seen us play like that in a long time," said Weems. "Some of the guys did not show up and it is the worst game we've played the whole season."
Olympiacos contained CSKA to 14 of 45 shots from the field and did a great job of neutralising Serbian playmaker Milos Teodosic.
Having averaged 13 points and five assists up to the Final Four, he recorded just five points and an assist on Friday.
"The shooting percentages are not always high in a game like this but in the end defence won the game," said Olympiacos coach Georgios Bartzokas.
Barcelona took an early lead over Real in the all-Spanish 'El Clasico'.
Sharp shooting by power forward Felipe Reyes then helped Real notch 26 points in the final quarter and they stole the lead for good with less than four minutes remaining.
Reyes finished with 17 points, two shy of Barcelona's Marcelinho Huertas, the game's top scorer.
The Catalan side sustained injuries and their top Croatian centre Ante Tomic had to play 36 of the 40 minutes.
"We knew they only had one centre so the plan from the start was to run him around, bump him a bit, and it worked," said Real's American-born forward Marcus Slaughter. "By the fourth quarter he was tired."
Barcelona take on CSKA for third place on Sunday afternoon before Real and Olympiacos clash later in the day.
"It will be a tough game. Olympiakos played great today and they have the heart of a champion but we'll take our time and plan like we did today," Slaughter said.