Giovanni van Bronckhorst's men could not have come closer to making history at the Ramon Sanchez Pizjuan on Wednesday evening.
They took the lead through Joe Aribo’s cool finish after some slapstick defending from the German side but were pegged back beg quickly as Colombian striker Rafael Santos Borre took advantage of some poor defending from Rangers as they failed to deal with a simple cross.
Rangers grew as the game went on and were arguably the better team when the game went to extra-time. They created by far the best chance to win it when substitute Kemar Roofe ran on to a long ball, hit the byline and fired a cross into the path of Ryan Kent but the winger was denied by a brilliant stop from Kevin Trapp. Steven Davis sent the rebound over the bar via a deflection.
It took the match to penalties, taken in front of the Rangers support behind one of the goals. Nine of ten spot kicks were scored. However, it was Aaron Ramsey, the big-name January signing who missed the decisive penalty, shooting down the middle, Trapp repelling the effort with his feet.
Frankfurt's penalties were all either emphatic or well placed with Allan McGregor having little chance.
Now Rangers must switch their focus to Saturday's Scottish Cup final clash with Hearts at Hampden Park.
Here is The Scotsman's ratings out of ten for all 17 players to get game time.