Postpublished at 87 mins
Aston Villa 0-1 Fulham
The Villa fans in the stands look desperate. The Fulham faithful don't know whether to sing or bite their nails. Some are trying both!
Fulham promoted to the Premier League
Whites captain Cairney slots first-half winner
Cottagers defender Odoi sent off for second booking
Fulham to pocket at least £160m in revenue
Aston Villa set for third year in second tier
Tom Garry
Aston Villa 0-1 Fulham
The Villa fans in the stands look desperate. The Fulham faithful don't know whether to sing or bite their nails. Some are trying both!
Aston Villa 0-1 Fulham
Alan Hutton is booked for catching Aleksandar Mitrovic, leading to a Fulham free-kick, with which they'll try to wind down the clock a bit.
Aston Villa 0-1 Fulham
Robert Snodgrass clips a ball in to Scott Hogan in the area, but the Villa substitute is offside.
Aston Villa 0-1 Fulham
Villa substitute Josh Onomah's shot from the edge of the area is blocked. Fulham are sitting very, very deep now. They've got six minutes plus stoppage time to hold on.
Aston Villa 0-1 Fulham
Fulham make their final change, as Cyrus Christie replaces Ryan Fredricks at the back.
Neither side have any substitutions left now.
Aston Villa 0-1 Fulham
Villa midfielder Conor Hourihane is going off with a knock, so on comes striker Scott Hogan. Can the former Brentford man grab a goal to stop Fulham going up?
Aston Villa 0-1 Fulham
We look set for an absolutely gripping next 10 minutes.
Villa, with a one-man advantage, need a goal.
Aston Villa 0-1 Fulham
Villa's Jonathan Kodjia almost makes an instant impact but can't quite connect with an attempted shot on the turn, around eight yards out.
Aston Villa 0-1 Fulham
Fulham take off Aboubakar Kamara, as Tomas Kalas comes on, in what's a pretty defensive switch.
Meanwhile, Villa bring on forward Jonathan Kodjia for Ahmed Almohamady, which is a very attacking move.
And Josh Onomah comes on for Mile Jedinak. Steve Bruce is going for it. It looks like Lewis Grabban might move to play out wide.
Aston Villa 0-1 Fulham
Steve Claridge
Ex-Premier League striker on BBC Radio 5 live
I think the red card was a little bit harsh. I think the first one was one where the referee saw the challenge but not if Denis Odoi got the ball - but the second one was a ridiculous challenge, not the kind of challenge you should make.
Aston Villa 0-1 Fulham
Villa's Mile Jedinak is booked for deliberately pulling back Fulham's Aleksandar Mitrovic to halt a break.
Aston Villa 0-1 Fulham
Will we see an Aston Villa substitution soon?
They've got 15 minutes to go and they need a goal if they're to avoid facing a third straight season of Championship football.
Aston Villa 0-1 Fulham
Ryan Fredericks picks out Aleksandar Mitrovic for Fulham and he controls it well but clips his shot over the bar from close range.
Aston Villa 0-1 Fulham
Stefan Johansen goes off for Fulham, as on comes Oliver Norwood.
Aston Villa 0-1 Fulham
So Fulham must play the remaining 20 minutes of normal time with 10 men.
Denis Odoi - who scored as they won their semi-final against Derby - looks devastated as he trudges off.
Aston Villa 0-1 Fulham
Drama. Fulham defender Denis Odoi is sent off for a second yellow card! It's a reckless swipe for the ball that misses the ball completely and catches Jack Grealish.
Will it change the course of this game?
Aston Villa 0-1 Fulham
Aboubakar Kamara breaks clear and bursts in to the area and he's brought down, under a challenge from Alan Hutton. Nothing given.
Aston Villa 0-1 Fulham
Fulham's Ryan Sessegnon almost gets his second assist of the game, feeding Stefan Johansen, but the on-rushing midfielder blazes narrowly over the bar from the D.
Aston Villa 0-1 Fulham
Aston Villa fan Phil
"It's been so much better so far from Villa, but we need a goal. Chances are coming and the fans are in full voice now.
"Jack Grealish and Albert Adomah are starting to turn up the heat but there’s still the worry that Fulham could catch us on the break. A nervy 20 minutes or so to go."
Throughout the afternoon we're following Fulham fan Ben and Aston Villa supporter Phil, who are at Wembley cheering on their respective teams.
Aston Villa 0-1 Fulham
Fulham work the ball back to Kevin McDonald on the edge of the Villa box, but McDonald's strike is blocked by James Chester.
From the corner, McDonald heads wide, under some pressure from Alan Hutton, who appeared to have his hands all over him.