The Cherries knew anything less than a win would see the battle for the second automatic promotion place behind champions Fulham go to the final day of the season.
Through 82 minutes, it appeared that scenario would play out until Kieffer Moore curled in a free-kick that sent Bournemouth back into the top flight after a two-year absence.
Forest will have to settle for a place in the play-offs as they saw their four-match winning run come to an end.
Story of the match
On nine minutes, the visitors came inches away from opening the scoring. Djed Spence picked up a loose ball inside his own half and drove forward before playing in Sam Surridge, whose left-footed effort hit the crossbar.
Zemura then came to the hosts' rescue on the half-hour mark as Philip Zinckernagel sent in a cross that found Johnson, but the Bournemouth defender got in the way of his first-time shot.
Johnson did get another opportunity on the edge of the box, but fired straight at Mark Travers.
After seeing a penalty appeal waved away, Zinckernagel shot through a crowd of players that Travers stopped on the stroke of half-time.
Solanke had a couple of chances as the second half got underway. His 20-yard shot was blocked and after Ryan Christie picked him out, he could only find the side netting.
Billing took advantage of a slip by Ryan Yates and his shot from a tight angle was easily handled by Samba. Christie's chance flew off of Cook's head as Bournemouth pressed for the opener.
Moore then threatened the Forest goal, but he was wide before teeing up Jaidon Anthony, who saw his first-time show punched away for a corner by Samba.
Finally, on 83 minutes, Moore broke the deadlock. Scott McKenna was whistled for a foul for tripping Zemura on the edge of the box. The resulting free-kick, the former Cardiff man curled his shot into the bottom corner.
The Cherries held on from there and will be celebrating as they return to the top flight.
Man of the match: Dominic Solanke
Moore's goal will forever make him a club hero and rightfully so, but the was Bournemouth's best player by miles. Sped up play and his movement got Forest out of their shape.
He played down the left in the second half and proved to be a perfect compliment to Moore.