Mislav Orsic scored a brilliant hat-trick as Dinamo Zagreb produced a remarkable turnaround to dump Tottenham out of the Europa League on Thursday.
The Croatian side trailed 2-0 after the first leg of their last-16 tie but hit back to win the return at the Maksimir Stadium 3-0 after extra time and snatch a place in the quarter-final draw.
Scottish champions Rangers were also knocked out as they lost 2-0 at home to Slavia Prague after having two men sent off, 3-1 being the aggregate score.
United needed a second-half strike from substitute Paul Pogba to beat AC Milan 1-0 at San Siro and prevail 2-1 on aggregate.
Arsenal were beaten 1-0 at the Emirates Stadium by Olympiacos but held on to go through 3-2 overall.
Spurs' exit was a huge shock. Jose Mourinho's side were below par but looked like they would do enough as they held the hosts in a goalless first half.
Orsic changed the nature of tie when he gave Zagreb hope with a fine long-range effort just after the hour.
He then levelled the overall score by finishing off a fine team move seven minutes from time and he capped a fine comeback following a superb solo run in extra time.
Spurs upped the tempo in a frantic finish but Dinamo held on for a deserved win.
Rangers were up against it after falling behind to Leicester's conquerors Slavia when Peter Olayinka headed home in the 14th minute at Ibrox.
Their hopes of getting back into the tie took a further knock as Kemar Roofe was given a straight red for a high boot just after the hour and Leon Balogun followed him off for a second bookable offence.
Nicolae Stanciu put the result beyond doubt with the visitors' second in the 74th minute.
Pogba won the battle of the star substitutes in Milan, coming off the bench at half-time to claim the crucial goal for United after 49 minutes.
Milan responded by sending on former United striker Zlatan Ibrahimovic but United held on with Dean Henderson producing a good save to deny the Swede.
Arsenal were not at their best but did enough to see off their Greek opponents.
Youssef El-Arabi, who also scored in the first leg, put the tie in the balance when his deflected strike found the net after 51 minutes but Mikel Arteta's men resisted further damage.
The visitors' hopes effectively ended when Ousseynou Ba was sent off for a second bookable offence seven minutes from time.
Roma cruised through as they claimed a 2-1 win over Shakhtar Donetsk in Kiev to triumph 5-1 on aggregate.
Spanish striker Borja Mayoral scored both goals for the Italian side either side of a reply from Junior Moraes.
An own goal from Jesus Vallejo and a last-minute penalty from Eirik Hestad gave the Norwegians a 2-1 success but Granada, who scored a crucial away goal through substitute Roberto Soldado, progressed 3-2 on aggregate.
Gerard Moreno scored both goals as Villarreal beat Dynamo Kiev 2-0 for a 4-0 aggregate success and Ajax completed a 5-0 aggregate win over Young Boys with a 2-0 victory in Bern.