A Charlie Mulgrew header 10 minutes from time sealed a dramatic return to the Championship at the first time of asking for Rovers at Doncaster.
Mulgrew's goal was the difference between the two sides as the Scot bagged his 14th and most crucial strike of the campaign.
It was a deserved victory for Rovers - their record-breaking 13th on the road - who dominated for large parts of the game on a chilly evening in Yorkshire.
There were brilliant celebrations after the game, with the lads mobbed by many of the 3,800+ travelling supporters at the final whistle.
Tony Mowbray made one change to the side which defeated Peterborough United last time out, with Craig Conway returning to the XI in place of Marcus Antonsson.
Antonsson dropped to the bench and were available if required, whilst other attacking options joining him as substitutes included Dominic Samuel, Peter Whittingham and Jack Payne.
Midfielder Richie Smallwood made his 50th appearance in Rovers colours as the ex-Rotherham United man returns to Yorkshire.
Opponents Doncaster made three changes to the side that lost at home to Oxford United on Saturday, with Darren Ferguson opting to replace Luke McCullough, Rodney Kongolo and Alfie May, who all dropped to the bench.
Coming in for the trio were Jordan Houghton, Alfie Beestin and the experienced James Coppinger, who captained the hosts.
A really positive start from Rovers led to the visitors having the first opportunity of the game as Danny Graham nipped in, went round goalkeeper Marko Marosi but his effort from an acute angle narrowly went past the post.
A moment later and Adam Armstrong's strike was hacked off the line by Andy Butler before Marosi reacted quickly to snaffle the ball from the feet of Graham, who was about to pull the trigger.
At the other end, Alfie Beestin's low effort skipper off the surface and David Raya made a comfortable save to deny the striker.
Rovers were getting closer and skipper Mulgrew forced Marosi to beat away his low free kick which skipped off the surface before reaching the Slovakian stopper.
The returning Conway was next to try his luck after Armstrong's cross found him, but after cutting back on his favoured right foot, the effort curled inches past Marosi's right-hand post.
Just after the half hour mark and Raya produced an outstanding stop to deny Alfie Beestin's header from nestling in the net as he dived low to his left to tip the ball around the post.
Five minutes before the break and Bradley Dack prodded just wide after Armstong smashed an effort into the box as Rovers probed for an opener at a drizzly Keepmoat Stadium.
It was a half which Rovers mainly bossed but went into the dressing room with nothing to show for their efforts and both went in all square.
Doncaster raced out of the traps after the break and after Mulgrew took down Beestin, Matty Blair curled the resulting free kick just over Raya's upright.
A moment later and Raya did well to hold Jordan Houghton's strike from range, with the effort just bouncing off the surface before the Rovers stopper collected.
With 22 minutes remaining a wicked Mulgrew corner clipped a Doncaster player, kissed the post and went out for a corner.
A minute later and a floated ball to the back post was put back across the six-yard line and Andy Butler was there to poke the ball off the toe of Graham who was simply ready to tap into an open net as Rovers continued to knock at the Doncaster door.
With 15 minutes to go, Mowbray made a double change with Payne coming on for Conway and Samuel entering the action in place of Graham.
Time was running out but with 10 minutes to go, that moment arrived as a Dack corner was flicked goalwards by Payne and there was Mulgrew who got on the end loop goalwards and bag his 14th goal of the season.
That sparked brilliant scenes from the near 4,000 travelling supporters and from the players on the pitch as Rovers took a deserved lead after pushing the hosts further and further back..
Doncaster looked for a response and substitute Andy Williams' header was straight at Raya with five minutes to go as Rovers managed to keep the home side at bay.
And that was to be that as Rovers secured promotion to create jubilant scenes between players, staff and supporters. A united club.
Enjoy your evening and hangovers, Rovers fans!
Doncaster: Marosi, Alcock (Kongolo, 84, Baudry, Butler, Mason, Marquis, Whiteman, Houghton, Blair, Beestin (Williams, 78), Coppinger (c) (McCullough, 73).
Unused substitutes: Lawlor, Kongolo, Boyle, Anderson, May.
Rovers: Raya, Bennett, Lenihan, Mulgrew (c), Williams, Evans, Smallwood, Armstrong (Antonsson, 79), Dack, Conway (Payne, 75), Graham (Samuel, 75).
Unused substitutes: Leutwiler, Whittingham, Bell, Downing.
Goals: Mulgrew, 80
Booked: Mulgrew, 46, Conway, 55
Attendance: 10,443 (3,860 away)
Referee: Eddie Ilderton.