Match ends, Aston Villa 0, Fulham 1.
Fulham have been promoted to the Premier League after beating Aston Villa in the Championship play-off final at Wembley.
Captain Tom Cairney was their goalscorer, finishing neatly underneath Villa goalkeeper Sam Johnstone after latching onto Ryan Sessegnon's pass midway through the first half.
A fractious game ended with Fulham down to 10 men after centre-back Denis Odoi was sent off for two bookable offences - both for fouls on Jack Grealish.
Villa were furious that Ryan Fredericks escaped a card during a first-half tangle with Grealish, the Fulham right-back landing studs first on Grealish's leg, while the Villa man was later booked for a lunging tackle on Cairney.
Several Villa penalty appeals were also waved away by referee Anthony Taylor, including one in second-half stoppage time when Grealish fell under a challenge from Matt Targett.
The game opened up after the interval, with Villa much more incisive and Grealish looking most likely to find a reply.
However, the midfielder headed over the bar under pressure from Marcus Bettinelli and then saw his mazy run thwarted by a combination of the Fulham goalkeeper and Kevin McDonald.
Odoi's red card invited further pressure, but Fulham held firm during a late Villa onslaught to clinch a win that is worth an estimated £160m - a figure which financial experts Deloitte say could rise to as much as £280m if the Whites survive for more than one season in the top flight.
Captain Cairney secures promotion
It was perhaps fitting that Sessegnon and Cairney, the two shining lights in an impressive Fulham team this season, combined to score the goal that sent them back to the top flight after a four-year absence.
The pair were two of the three nominees for the EFL's Championship Player of the Season award, which was won by teenager Sessegnon.
The 18-year-old winger had been largely anonymous early on, but he found space in the centre of the Villa half and picked his pass perfectly to find the onrushing Cairney, who slotted coolly into the net.
Sessegnon could have doubled Fulham's lead before half-time but his back-post header was directed straight at Johnstone, while he almost set up Stefan Johansen for a second goal midway through the second period.
"We've suffered for three years, not just in the second half," said Fulham head coach Slavisa Jokanovic, who won promotion as Watford boss in 2015 but left the Hornets before he got the chance to take charge of them in the Premier League.
"It's not been easy since I've been at this place. We've shown with our style that we can be one of the best Championship teams, and we've shown we can be solid, organised and fighting altogether for a clean sheet."
Fulham back in the big time
Fulham's transformation from mid-table underperformers to promotion winners has been one of the feature points of the Championship season.
Defeat at struggling Sunderland on 16 December left them 12th in the table, 18 points behind the top two. Twenty-three unbeaten matches later, they were on the brink of automatic promotion and, had they won their final game at Birmingham, they would have finished second behind champions Wolves.
There was to be no repeat of last season's play-off disappointment, though. The Whites saw off Derby over two legs in their semi-final before beating Villa at Wembley.
While many have played their part, two January loan additions have been critical to their success. Newcastle striker Aleksandar Mitrovic has netted 12 goals in 20 appearances and given the team a physical presence up front, while the arrival of Southampton left-back Targett has allowed Sessegnon to push further forward and excel in a more advanced position.
Fulham spent 13 successive seasons in the top flight before their relegation in 2014 and the hope is that the nucleus of this team, helped by the financial backing of owner Shahid Khan, can see them become an established Premier League club again.
Their possession-based style has been as eye-catching as anything on show in the second tier and that brand of football should transfer well to the higher level, although there is very little top-flight experience in Fulham's ranks and that is likely to be an area that Jokanovic will look to address in the next couple of months.
Fredericks should have been sent off - Bruce
On another day, Villa could have been awarded at least one penalty and had a man advantage for more than an hour.
In particular it was the Fredericks incident, which occurred right in front of the two dugouts immediately after Cairney's winning goal, that most angered Villa boss Steve Bruce.
"There were big decisions that went against us," said the former Manchester United captain, who failed to win a record fifth promotion from the second tier.
"For me, the boy should have had a red card very early. It was right in front of the referee and the fourth official, and for me he stamps on him.
"Nobody wants to see people sent off, but when it's as deliberate as that, he deserved a red card.
"There might have been a penalty in the second half, but what we can't disguise is that we didn't do enough in the first half.
"You just need a break and unfortunately we didn't get it."
What next for Villa?
Many Villa fans will look back at this season and wonder what might have been.
What if talismanic midfielder Grealish had not sustained a freakish kidney injury that caused him to miss the first three months of the campaign?
What if striker Jonathan Kodjia had not suffered another long-term injury that wrecked his second season with the club?
And what if a possible season-defining 4-1 win over leaders Wolves in March, which left them four points off second place with 10 matches remaining and looked to have kick-started an automatic promotion push, had not been followed by miserable defeats by lowly QPR and Bolton?
Villa have spent heavily in the past two seasons in their bid to return to the top flight, but they will have to cut their cloth accordingly as they prepare for a third successive season in the second tier.
Grealish was their stand-out performer at Wembley. He was outstanding, almost scored one of the best goals ever in a play-off final and did not deserve to be on the losing side.
His consistent form in the second half of the campaign has been a huge positive for Villa and he is sure to be a target for Premier League clubs this summer, so keeping the 22-year-old at Villa Park will be paramount to Bruce's side mounting another challenge for promotion next season.
"The discussions have got to be had above me to say what we've got and what we haven't got," said Bruce, who added it is up to veteran captain John Terry to decide whether he will play on at Villa Park next season.
"Of course there will be speculation about Jack. Personally, I would like him to stay. Another year with us would do him the world of good.
"We'd love to have given him the platform of the Premier League and we haven't, but he's playing regular football week in and week out. We'll see what happens."
- 27El MohamadySubstituted forKodjiaat 77'minutes
- 5ChesterBooked at 8mins
- 21HuttonBooked at 86mins
- 15JedinakBooked at 76minsSubstituted forOnomahat 77'minutes
- 14HourihaneSubstituted forHoganat 82'minutes
- 10GrealishBooked at 63mins
- 2FredericksSubstituted forChristieat 83'minutes
- 4OdoiBooked at 70mins
- 8JohansenSubstituted forNorwoodat 72'minutes
- 47KamaraBooked at 77minsSubstituted forKalasat 77'minutes
- 3R Sessegnon
- Anthony Taylor
- Shots on Target
Second Half ends, Aston Villa 0, Fulham 1.
Foul by Oliver Norwood (Fulham).
Jack Grealish (Aston Villa) wins a free kick in the defensive half.
Ryan Sessegnon (Fulham) wins a free kick on the left wing.
Foul by Robert Snodgrass (Aston Villa).
Attempt missed. Scott Hogan (Aston Villa) header from the centre of the box misses to the right. Assisted by Albert Adomah with a cross.
Matt Targett (Fulham) wins a free kick on the left wing.
Foul by Josh Onomah (Aston Villa).
Attempt missed. Robert Snodgrass (Aston Villa) left footed shot from outside the box is close, but misses to the right from a direct free kick.
Foul by Aleksandar Mitrovic (Fulham).
Jack Grealish (Aston Villa) wins a free kick in the attacking half.
Alan Hutton (Aston Villa) is shown the yellow card for a bad foul.
Aleksandar Mitrovic (Fulham) wins a free kick on the left wing.
Foul by Alan Hutton (Aston Villa).
Offside, Aston Villa. Robert Snodgrass tries a through ball, but Scott Hogan is caught offside.
Attempt blocked. Josh Onomah (Aston Villa) right footed shot from outside the box is blocked. Assisted by Jack Grealish.
Substitution, Fulham. Cyrus Christie replaces Ryan Fredericks.
Foul by Oliver Norwood (Fulham).
Robert Snodgrass (Aston Villa) wins a free kick in the attacking half.