TottenhamImage source, Getty Images
Image caption,

Dominic Solanke ended an 11-game goalless run

Dominic Solanke's first-half penalty kept Tottenham Hotspur's season alive as they defeated Eintracht Frankfurt to reach the semi-finals of the Europa League.

Tottenham wasted several chances to take control of the tie during a 1-1 draw in the first leg last week, but in Frankfurt Ange Postecoglou's side spent large spells without the ball and under pressure.

Spurs were awarded a penalty as half-time approached when Frankfurt goalkeeper Kaua Santos mistimed his jump and clattered into James Maddison while attempting to claim a long ball forward.

Maddison's team-mates were incensed when referee Davide Massa failed to award a spot-kick, though he changed his decision after a video assistant referee (VAR) review and booked Santos.

Solanke stepped up to take the spot-kick - Postecoglou appeared to indicate he wanted the striker to take it - and stroked the ball down the middle as Santos dived to the left.

Maddison - who initially continued after receiving treatment - was replaced in first-half stoppage time by Dejan Kulusevski.

Spurs struggled to keep the ball in central areas after losing the England midfielder, and spent the first 15 minutes of the second half repelling wave after wave of Frankfurt attacks.

Though the hosts dominated possession after the break, Tottenham threatened on the counter-attack and from set-pieces.

Cristian Romero headed narrowly wide from a corner just after the hour mark, before Rodrigo Bentancur headed over from a similar situation.

Guglielmo Vicario produced a magnificent save with his legs to keep out Fares Chaibi from close range as Eintracht upped the pressure, before Leeds loanee Rasmus Kristensen dragged wide with the goal gaping following a cut-back.

Tottenham will face either Lazio or Bodo/Glimt in the final four.

Spurs show fight when it matters most

It has been an abysmal season for Tottenham and their supporters, but with one last shred of hope on the line, Postecoglou's players turned up.

Spurs fought and scrapped all night, and in the second half managed to weather a Frankfurt storm on a rainy night in Germany.

Tottenham started fairly comfortably, limiting the hosts to half-chances and going close through a curling Mathys Tel effort.

However, they almost succumbed to the kind of defensive mishap that has plagued their Premier League campaign.

Frankfurt striker Hugo Ekitike looked primed to score after a Santos goal-kick split the Spurs defence in half, but Micky van de Ven recovered to deny the Frenchman with a last-ditch tackle.

The penalty was the defining moment of the night, and not just because it produced the game's only goal.

Maddison's self-sacrifice summed up an attitude that has been lacking at times this season, a willingness to put bodies on the line and stand firm in the face of adversity.

The result was a mature performance from a side that has looked anything but for much of this season, and the prize just a third European semi-final in 44 years.

With little else to play for and Postecoglou's job on the line, Tottenham came of age. Three games now separate them from a first trophy win in 17 years.

Player of the match

Number: 19 D. Solanke
Average rating 8.38
Number: 11 H. Ekitiké
Average Rating: 4.73
Number: 40 Kauã Santos
Average Rating: 4.56
Number: 3 A. Theate
Average Rating: 4.54
Number: 8 F. Chaïbi
Average Rating: 4.47
Number: 4 R. Koch
Average Rating: 4.42
Number: 16 H. Larsson
Average Rating: 4.40
Number: 15 E. Skhiri
Average Rating: 4.35
Number: 35 Tuta
Average Rating: 4.34
Number: 19 J. Bahoya
Average Rating: 4.33
Number: 21 N. Brown
Average Rating: 4.27
Number: 17 E. Wahi
Average Rating: 4.14
Number: 13 R. Kristensen
Average Rating: 4.14
Number: 27 M. Götze
Average Rating: 4.12
Number: 20 C. Uzun
Average Rating: 4.02
Number: 36 A. Knauff
Average Rating: 3.98

After the opportunity to rate players has closed, the score displayed represents the average from all the submissions by BBC Sport users.