Galatasaray 1-2 Barcelona (Barca won 2-1 on aggregate)
Barcelona secured passage to the UEFA Europa League quarter-finals with a come-from-behind 2-1 win over Galatasaray.
The two sides could not be separated in the first leg, but Galatasaray got the first goal in the tie thanks to Marcao's strike on 28 minutes.
However, Xavi Hernandez's charges pulled levelled eight minutes before the halftime break after Ferran Torres did well to pick out Pedri, who slotted home from close range.
The turnaround was complete for the visitors four minutes after the break when Frenkie de Jong nodded the ball down for Pierre-Emerick Aubameyang to slot into an empty net.
AS Monaco 0-1 Sporting Braga (Sporting won 3-0 on aggregate)
Sporting Braga kept their Europa League campaign alive after overcoming AS Monaco 3-0 on aggregate.
The visitors broke the deadlock after 19 minutes as Abel Ruiz netted for the second straight game to make it 3-0 on aggregate.
Red Star Belgrade 2-1 Rangers (Rangers won 4-2 on aggregate)
Rangers sealed their ticket to the quarter-finals with a 4-1 aggregate victory over Red Star Belgrade.
After losing the first leg 3-0, the hosts gave themselves a chance of a comeback after Mirko Ivanic opened the scoring in the 10th minute.
Ryan Kent equalised for Rangers on 56 minutes before El Fardou Mohamed Ben Nabouhane netted the winner in second-half stoppage time, although Rangers still progressed after winning 4-2 on aggregate.
Here are the best-paid players in this season's Champions League
Bayer Leverkusen 0-1 Atalanta (Atalanta won 4-2 on aggregate)
Atalanta struck late in the second half to secure a 1-0 win over Bayer Leverkusen in the second leg.
Jeremie Boga got the goal for the Serie A side in the 91st minute to secure the win on the night and a 4-2 aggregate scoreline.
West Ham United 2-0 Sevilla (West Ham won 2-1 on aggregate)
West Ham United advanced to the quarter-finals in their debut campaign after defeating Sevilla 2-0.
The Hammers levelled the tie in the 39th minute when Tomas Soucek opened the scoring in the 39th minute after being set up by Michail Antonio.
The game went to extra-time with the score locked at 1-1 on aggregate, before Andriy Yarmolenko struck in the 112th minute to send the Hammers to the last eight.
Olympique Lyon 1-1 Porto (Lyon won 2-1 on aggregate)
Olympique Lyon overcame Portuguese giants FC Porto to secure a spot in the quarter-finals on Thursday.
Lyon held a slender lead 1-0 coming into the clash, but they doubled that tally in the 13th minute courtesy of a strike from Moussa Dembele.
Pepe Aquino got Porto's first goal in the tie when he levelled matters on the night in the 27th minute.
Eintracht Frankfurt 1-1 Real Betis (Frankfurt won 3-2 on aggregate)
Real Betis suffered late heart break as Eintracht Frankfurt advanced to the quarter-finals on Thursday evening.
Betis were on the brink of elimination after trailing 2-1 on aggregate, but Borja Iglesias popped up with a strike in the 90th minute and sent the game to extra-time.
With the game seemingly headed for a penalty shoot-out, Frankfurt were gifted an equaliser through Guido Rodriguez's own goal in 120th minute and secured the win on aggregate.