Justin Kluivert gave the hosts an early lead, but the sides were back on level terms after Hudson-Odoi curled in the equaliser on the stroke of half-time.
His afternoon came to a premature end, however, when substitute Philip Billing clipped the back of his Achilles and was dismissed by referee Rebecca Welch, who was booed off the pitch by the home support.
The hosts quickly established a lead from Lewis Cook’s corner, flicked on by Luis Sinisterra to Kluivert, who tapped the fifth-minute opener past January signing Matz Sels on his Forest debut.
Taiwo Awoniyi – looking for his 12th goal of the campaign – had forced Neto into two simple stops by the 15-minute mark and perhaps should have done better on his second attempt after a threatening run.
Save another soft Yates effort, neither side looked like scoring as the contest approached the halfway point of the staccato, set-piece-heavy period until Hudson-Odoi squared things up on the stroke of half-time.
Morgan Gibbs-White floated in a free-kick from the right and the awaiting Hudson-Odoi took his time, weaving his way through a sea of red before curling the equaliser past Neto and into the bottom-right corner.
The second half began with a familiar rhythm to the first, Forest unable to do anything with the contest’s 10th corner, while Bournemouth’s sixth of the afternoon – and 11th of the match – was also cleared.
Andoni Iraola made three changes early in the half, bringing in Marcus Tavernier for Semenyo immediately after the restart before replacing Kluivert – who had previously been booked by Welch – with Biling, and bringing on Alex Scott for Ryan Christie.
It remained anyone’s game with 20 minutes remaining, Tavernier having tried his luck but firing over, while Selz managed to get his hand to another Bournemouth corner.
Welch showed Billing a straight red in the 84th minute, when the Denmark international clipped the back of Hudson-Odoi’s ankle in midfield.
The Forest goal scorer limped to the touchline and briefly looked like carrying on before the contest entered seven minutes of stoppage time, where neither side was able to make a difference.