Match ends, Bolton Wanderers 3, Peterborough United 0.
Bolton Wanderers 3-0 Peterborough United
Bolton sealed an immediate return to the Championship with a comfortable win over Peterborough at the Macron Stadium.
Midfielder Jem Karacan settled any nerves by volleying the hosts in front from Dorian Dervite's curling cross.
Tom Nichols had a goal-bound effort blocked by David Wheater as Posh pushed forward in search of a reply.
Wheater headed the second after the break and Adam le Fondre rifled home to confirm automatic promotion.
Phil Parkinson's side have enjoyed a consistent season in which they have not been lower than eighth in the table and in the top four continuously since 3 October.
They went into the game two points clear of rivals Fleetwood and with a superior goal difference.
And it was the hosts who were the first to threaten as Karacan shot wide after Peterborough failed to properly clear Josh Vela's ball in.
The midfielder made no mistake with the second opportunity that came his way, showing superb technique to give keeper Luke McGee no chance as he found the bottom corner.
McGee saved with his legs from Gary Madine to restrict Bolton to a single-goal lead at the interval, but Wheater headed in from two yards after Le Fondre nodded the ball back across goal following a corner.
The second appeared to sap Peterborough's belief and McGee was again in action to beat away a ferocious drive by Mark Beevers, who was part of the Millwall side beaten by Barnsley in last season's League One play-off final.
Urged on by the majority of a 22,590 crowd, Bolton opened up the Posh defence again and Vela cleverly beat two men before playing in Le Fondre, who fired past McGee into the top corner to spark the promotion celebrations.
Bolton overcome off-pitch problems
Bolton were relegated to League One 12 months ago following a 4-1 defeat by Derby County after a difficult season on and off the pitch, with the paperwork on the club's takeover by Dean Holdsworth and Ken Anderson signed minutes before a High Court winding-up hearing in March 2016.
Despite the change in ownership, the Trotters have had to deal with further difficulties this term, including a public dispute between Holdsworth and Anderson.
Holdsworth eventually agreed the sale of his stake in March, which appeared to put the club back on a stable footing, but Bolton remained under a transfer embargo, imposed in December 2015 for failing to submit accounts, which meant they could not pay fees for new players.
And there were further reports last week of the club being served with a winding-up petition over a £5m debt, with a High Court date set for 22 May, although Bolton say it is a matter for Holdsworth's Sports Shield group.
Right man for the job
Amid all the off-field issues, Bolton made a shrewd choice when Parkinson was lured from Bradford City to become their new manager last June.
The 49-year-old guided Colchester United to promotion from League One as runners-up in 2006, his first managerial job, and brought Bradford City up from League Two via the play-offs in 2013.
Victories in their first four games and a seven-match unbeaten run set the tone for the season and Parkinson has built the division's meanest defence, conceding only 36 goals in 46 games.
Bolton sold striker Zach Clough to Nottingham Forest in January and, perhaps unusually for a team challenging for promotion, did not have a prolific scorer, with goals this season shared among 19 different players.
However, two of the men Parkinson was able to bring in, Karacan and Le Fondre - one a former free agent on a short-term contract and one on loan - both found the net as Wanderers returned to the second tier along with champions Sheffield United.
Bolton boss Phil Parkinson told BBC Radio Manchester: "I'm absolutely delighted, and to do it in the manner we did with a very good, solid performance, I'm just so pleased.
"Last week we were a minute away from promotion and it knocked us a little bit, but we regrouped in training this week, and to play as well as we did when the pressure's on is a great tribute to all the players.
"For every footballer, when the big games come, you've got to perform, that's what it's all about, and the lads performed when it mattered most.
"There's been some tough times at the club over the last few years. Ken Anderson took on a tough job when he and Dean Holdsworth bought the club, because there were a lot of obstacles in the way. I'm just so proud for everyone connected to the club today."
Defender Mark Beevers: "Words can't describe how good it feels. From day one the lads have mucked in - we've had fixtures when we've had to dig deep and thankfully, most of them we've come out on top in.
"It's been a collective effort, the fans, the whole of the squad, the staff and we've been rewarded with promotion today.
"I've been promoted with Sheffield Wednesday before, but I didn't play that many games. With Bolton, I've played the majority of the season and it's massive for me and my family as well.
"It's been a while since Bolton had something to cheer about. It's not easy getting out League One, it takes a massive collective effort."
- 4DerviteBooked at 20mins
- 10KaracanSubstituted forPratleyat 64'minutes
- 14MadineSubstituted forWilkinsonat 90'minutes
- 45Le Fondre
- 3HughesBooked at 20minsSubstituted forTafazolliat 64'minutes
- 18Da Silva LopesSubstituted forBorgat 73'minutes
- 21NicholsSubstituted forEdwardsat 62'minutes
- Scott Duncan
- Shots on Target
Second Half ends, Bolton Wanderers 3, Peterborough United 0.
Substitution, Bolton Wanderers. Conor Wilkinson replaces Gary Madine.
Attempt missed. Gary Madine (Bolton Wanderers) right footed shot from outside the box is close, but misses the top left corner.
Foul by Josh Vela (Bolton Wanderers).
Ryan Tafazolli (Peterborough United) wins a free kick in the defensive half.
Attempt missed. Adam Le Fondre (Bolton Wanderers) right footed shot from outside the box is close, but misses to the left.
Corner, Bolton Wanderers. Conceded by Gwion Edwards.
Foul by David Wheater (Bolton Wanderers).
(Peterborough United) wins a free kick in the attacking half.
Adam Le Fondre (Bolton Wanderers) wins a free kick in the defensive half.
Foul by Michael Bostwick (Peterborough United).
Goal! Bolton Wanderers 3, Peterborough United 0. Adam Le Fondre (Bolton Wanderers) right footed shot from the centre of the box to the bottom left corner. Assisted by Josh Vela.
Attempt missed. Filipe Morais (Bolton Wanderers) right footed shot from the centre of the box is high and wide to the right.
Substitution, Peterborough United. Andrea Borg replaces Leonardo Da Silva Lopes.
Hand ball by Craig Mackail-Smith (Peterborough United).
Attempt saved. Mark Beevers (Bolton Wanderers) right footed shot from the centre of the box is saved in the centre of the goal.
Corner, Bolton Wanderers. Conceded by Leonardo Da Silva Lopes.
Corner, Bolton Wanderers. Conceded by Ryan Tafazolli.
Substitution, Bolton Wanderers. Darren Pratley replaces Jem Karacan.
Substitution, Peterborough United. Ryan Tafazolli replaces Andrew Hughes.
Foul by Jem Karacan (Bolton Wanderers).
Callum Chettle (Peterborough United) wins a free kick in the defensive half.
Substitution, Peterborough United. Gwion Edwards replaces Tom Nichols.
Attempt missed. Mark Beevers (Bolton Wanderers) header from the centre of the box misses to the left.
Corner, Bolton Wanderers. Conceded by Lewis Freestone.
Attempt missed. Jem Karacan (Bolton Wanderers) right footed shot from outside the box is close, but misses to the right.
Goal! Bolton Wanderers 2, Peterborough United 0. David Wheater (Bolton Wanderers) right footed shot from very close range to the centre of the goal. Assisted by Adam Le Fondre following a set piece situation.
Corner, Bolton Wanderers. Conceded by Lewis Freestone.
Attempt saved. Chris Forrester (Peterborough United) right footed shot from more than 35 yards is saved in the top centre of the goal.
Second Half begins Bolton Wanderers 1, Peterborough United 0.
First Half ends, Bolton Wanderers 1, Peterborough United 0.
Corner, Peterborough United. Conceded by David Wheater.
Attempt blocked. Marcus Maddison (Peterborough United) right footed shot from outside the box is blocked.
Attempt saved. Gary Madine (Bolton Wanderers) right footed shot from the centre of the box is saved in the bottom right corner.
Foul by Filipe Morais (Bolton Wanderers).
Tom Nichols (Peterborough United) wins a free kick on the right wing.
Attempt blocked. Tom Nichols (Peterborough United) right footed shot from very close range is blocked.
Mark Beevers (Bolton Wanderers) wins a free kick on the right wing.
Foul by Tom Nichols (Peterborough United).