West Ham defender Aaron Cresswell was sent off following a VAR check for bringing down Jens Petter Hauge just outside the area after 19 minutes.
Frankfurt then caused further problems for the Hammers, with Rafael Santos Borre slotting the ball home after he was found by Ansgar Knauff.
West Ham produced a committed display in the second half but Frankfurt were resilient. Tensions soon spilled over, with Hammers boss David Moyes sent off for kicking the ball at a ball boy as his touchline frustrations got the better of him.
Frankfurt will take on Rangers in the Europa League final in Sevilla on May 18th. The Bundesliga side’s victory over two legs was fully merited as they were well organised throughout and also posed an attacking threat.
There was a superb atmosphere inside the stadium, with the jubilant Frankfurt fans entering the pitch at the final whistle.
MORE: How to watch Frankfurt vs. West Ham
Eintracht Frankfurt vs. West Ham result
Goals: Borre - FRA - 26
Eintracht Frankfurt vs. West Ham live updates, highlights from Europa League clash
FULL-TIME - Eintracht Frankfurt 1-0 West Ham (Frankfurt win 3-1 on aggregate): Frankfurt are through to the Europa League final, with their fans now on the pitch. Cresswell’s red card made matters very difficult for West Ham, with Borre’s goal then extending Frankfurt’s aggregate advantage. West Ham boss David Moyes was also sent off as tensions spilled over.
It’s now confirmed that Frankfurt will face Rangers in the final in Seville.
90 mins: Rice has an effort blocked and then Trapp is equal to Yarmolenko’s attempt.
90 mins: Jakic blasts the ball over for Frankfurt, who are edging ever closer to reaching the final. Bowen is now denied by Trapp.
89 mins: A great opportunity for Soucek following a corner, but his header is off target. Agonising for West Ham. Trapp is booked for dissent and we are now into five minutes of additional time.
87 mins: There’s a chance for Antonio as Rice plays him in, but Trapp is there to thwart West Ham.
85 mins: Toure looks to add to Frankfurt’s lead, with Areola tipping his effort over the crossbar. Yarmolenko replaces Coufal.
There are further clashes between both sets of players, with tensions rising. Knauff and Benrahma are both booked. Frankfurt send on Paciencia for Borre, while Hrustic comes on for Hauge.
DAVID MOYES SENT OFF: West Ham boss David Moyes is sent off for showing his frustration after a Frankfurt substitute threw the ball at him.
75 mins: Benrahma has a shot deflected wide. He claims for a handball the area but a corner is given. Rode goes off, with Jakic coming on. Antonio was booked for a push and now there are tensions between both benches.
73 mins: Kostic hits a powerful effort wide for Frankfurt and now West Ham send on Benrahma as a replacement for Fornals.
71 mins: Antonio has an effort pushed away by Trapp. West ham are refusing to give up but time is starting to run out for them now.
68 mins: Frankfurt are looking for another goal, with Kamada dragging an effort wide on this occasion.
64 mins: Frankfurt remain composed in possession and their fans are jubilant. They just have to see the game through now. Rode gets a yellow card for a foul on Bowen.
59 mins: West Ham are starting to carve out more opportunities now. Antonio crosses for Dawson, whose header doesn’t cause any problems for Trapp.
56 mins: Bowen sends a cross in towards Antonio, but Toure is there to intervene and cut out the danger for Frankfurt.
54 mins: Knauff is continuing to look very dangerous for Frankfurt, with his runs into the box very difficult for West Ham to track.
51 mins: Frankfurt are continuing to play with a lot of intensity. It will take something special for West Ham to overcome this, with Frankfurt firmly in control at present.
48 mins: Borre controls the ball and unleashes a volley but his effort is straight at Areola.
46 mins: The second half is underway in Frankfurt.
West Ham have players such as Benrhama and Yarmolenko on the bench but will they be able to get themselves out of this difficult situation?
As things stand, Frankfurt will be taking on Rangers in the final, with the Scottish side leading 2-1 on aggregate against RB Leipzig.
Half-time - Frankfurt 1-0 West Ham: A hugely frustrating half for West Ham, who were reduced to ten men when Cresswell was sent off, with Borre’s goal then inflicting further misery upon Moyes’ team. Frankfurt are 3-1 up on aggregate.
45 mins: Declan Rice is booked for dissent as half time approaches.
45 mins: Knauff plays the ball in towards Rode, whose curled effort goes off target.
42 mins: Frankfurt defender N’Dicka is booked for a late challenge on Antonio. Bowen sends in a free-kick towards Zouma but his effort didn’t cross the line, with N’Dicka clearing the ball away.
36 mins: West Ham will be looking to get through to half time without conceding again, but they look devoid of belief at present, with nothing going their way.
33 mins: Given their numerical disadvantage, West Ham are finding it very hard to create attacking openings, with Frankfurt in control in the closing stages of the first half.
29 mins: The red card for Cresswell has been a devastating blow for West Ham and has given Frankfurt a significant confidence boost. It will be a very difficult task for Moyes’ side now.
GOAL - Frankfurt 1-0 West Ham (Borre) - Frankfurt take the lead on the night and are now 3-1 up on aggregate, with Borre applying the finishing touch after a neat move, with Knauff providing the assist with a fine cross
West Ham bring on Ben Johnson for Lanzini as Moyes responds to Cresswell’s red card.
19 mins: It’s almost a double blow for West Ham as Kostic goes for goal from the free-kick but he lashes his effort just wide.
CRESSWELL SENT OFF: Following a VAR check West Ham are reduced to ten men, with Cresswell getting a red card.
16 mins: Cresswell is booked for bringing down Hauge just outside the area. Frankfurt felt that the West Ham defender should have been sent off.
14 mins: West Ham look assured in possession but will they be able to break Frankfurt down? The German side have been well organised in defence so far.
8 mins: West Ham are frequently playing long balls in towards Antonio as they look to get past the Frankfurt defence.
4 mins: There’s a problem for Frankfurt early on with Hinteregger requiring treatment after being barged over by Antonio. The defender has come back onto the pitch and will be determined to continue. However, he eventually has to go off and is replaced by Toure.
2 mins: Despite the intimidating atmosphere, West Ham have started the game brightly and are taking the game to Frankfurt. Cresswell sends in a corner but Frankfurt manage to clear.
Kick off: The game is underway. It’s a huge clash, but who will make it through to the final?
5 minutes from kickoff: There’s a superb atmosphere in Frankfurt, with the two teams in the tunnel.
15 minutes from kickoff: The midfield pairing of Soucek and Rice could be vital for West Ham tonight. Both players are capable of pushing forward when the opportunity arises, but they will have to be judicious with regards to their attacking movements.
30 minutes from kickoff: Frankfurt took a very early lead in the first leg through Knauff, so West Ham will have to be switched on to avoid a repeat tonight. David Moyes will hope that his side are more organised in the early stages.
1 hour from kickoff: Throughout this Europa League campaign Frankfurt have demonstrated that they are capable of playing with both determination and flair. They will need those qualities in abundance again tonight as they look to secure their place in the final.
Frankfurt team: Trapp (GK) - Tuta, Hinteregger, N’Dicka - Knauff, Sow, Rode, Kostic - Hauge, Borre, Kamada.
Subs: Grahl (GK), Jakic, Hrustic, Lammers, Toure, Hasebe, Ache, Chandler, Da Costa, Lenz, Barkok, Paciencia.
For Frankfurt, Sebastian Rode starts despite having been a doubt for this game. Hauge is preferred to Hrustic.
West Ham team: Areola (GK) — Coufal, Dawson, Zouma, Cresswell — Soucek, Rice — Bowen, Lanzini, Fornals — Antonio.
Subs: Fabianski (GK), Randolph (GK), Yarmolenko, Vlasic, Noble, Benrahma, Diop, Fredericks, Masuaku, Johnson, Kral, Alese.
The West Ham team is as expected, with Bowen, Lanzini and Fornals operating behind Antonio.
90 minutes from kickoff: There is sure to be a superb atmosphere in Germany but West Ham will have to shut out the noise and focus purely on themselves as they look to progress. The incentive of being in the Champions League next season by winning the Europa League will surely spur them on and they have attacking players such as Jarrod Bowen and Michail Antonio who are capable of making a major impact.
2 hours from kickoff: West Ham know they have much work to do as they look to overturn their first-leg deficit and make it through to the final. However, David Moyes’ side have shown great spirit throughout their Europa League run and they will be determined to make it through.
How to watch Eintracht Frankfurt vs. West Ham
In the UK, the game will be shown live on BT Sport, while Paramount + will be providing coverage in the US.
DAZN will show the game in Canada, with Stan Sport having broadcasting rights in Australia.