Martyn Woolford struck a late winner as Scunthorpe won a pulsating and dramatic League One play-off final to seal promotion and an immediate return to the Championship.
The impressive Woolford drilled the ball under Millwall keeper David Forde to clinch victory for the Iron seven weeks to the day after they lost the Johnstone Paint Trophy at Wembley.
Matt Sparrow had put Nigel Adkins' team in front before Gary Alexander struck twice in three first-half minutes - the first of which was a sensational long-range strike - to put the Lions ahead at the break.
But Sparrow restored parity for the Lincolnshire club, firing the ball past the keeper after showing superb composure to wrong-foot him, before Woolford's 85th-minute winner.
Millwall had missed their own chance to win it with the scores tied at 2-2, Alexander missing the target with a free header from six yards.
It was a final rich in drama, endeavour and skill - and was played in sweltering conditions.
Both teams played their full part in making the match compulsive viewing, with defeat hard on a Millwall side that improved as the final wore on.
But Iron boss Nigel Adkins had promised that his team would learn from their JPT defeat by Luton and he was as good as his word, with his team perhaps showing more craft in attack.
Indeed it was the Iron who struck the opener with a goal of superb invention after six minutes.
Woolford charged on to Gary Hooper's deft backheel before shooting across goal from 18 yards. Forde could only parry the low strike and Sparrow reached the rebound first to smash the ball home from inside the six-yard box.
The Iron played with a confidence and self-belief that allowed them to fully express themselves, with strike duo Paul Hayes and Gary Hooper working superbly in tandem.
Clever little passes, deft movement and a desire to shoot characterised Scunthorpe's play.
Woolford shot narrowly over after cutting in from the left, Hooper hit the post from the tightest of angles and a strike from Hayes was deflected inches over the Millwall crossbar by Alan Dunne.
But the Lions, with a huge and vociferous support, showed tremendous desire - and they underlined the threat they posed when Sam Togwell diverted a strike from David Martin against the post after 31 minutes.
Even so, there was no real hint of the drama that followed as Alexander's quick-fire brace changed the complexion of the final.
Sparrow scored two goals for Scunthorpe at Wembley
His first strike was as memorable as it was extraordinary. He chested Zak Whitbread's header with his first touch and smashed the ball into the goal from more than 30 yards with his second. The ball arced slightly and eluded the despairing dive of Joe Murphy.
The Scunthorpe stopper was named League One goalkeeper of the season but he should have done better with Alexander's second. Murphy failed to prevent the striker's header from crossing the line after the Lions forward connected with Martin's deft cross.
It was a fast, furious and breathlessly exciting opening half on a day when temperatures topped 100 degrees Fahrenheit - and the final resumed at a notably slower tempo after the break.
An Alexander header wide of the target after 58 minutes was the first chance of the second half, while Scunthorpe substitute Liam Trotter forced a save from Forde after meeting a corner on the volley shortly afterwards.
Millwall had tightened up considerably at the back and closed down space in midfield but Scunthorpe refused to buckle and did eventually find an equaliser. The Iron finally got in behind through the impressive Woolford, who slotted the ball across goal for Sparrow to wrong-foot Forde and slot home from six yards.
Alexander then had his glorious chance to restore Millwall's lead and complete a Wembley hat-trick but, completely unmarked and six yards from goal, he missed the target. It was arguably the most crucial moment of the match and Woolford struck the decisive goal minutes later.
This page is best viewed in an up-to-date web browser with style sheets (CSS) enabled. While you will be able to view the content of this page in your current browser, you will not be able to get the full visual experience. Please consider upgrading your browser software or enabling style sheets (CSS) if you are able to do so.