In a race dominated by Joe Gibbs Racing, Hendrick Motorsports driver Bowman pounced on a late restart to charge past Joey Logano and leader Denny Hamlin to assume control of the race in the dying stages.
He had little trouble from that point hanging on for the win, finishing 0.381 seconds ahead of Hamlin to secure his first win driving the #48 car – which he took over after seven-time Cup champion Jimmie Johnson moved to IndyCar.
Bowman had been penalised at the start of the third stage for an uncontrolled tyre within the pitlane, but soon recovered and cycled up to fourth on the road before Kevin Harvick hit the wall at Turn 1 which brought out the final caution period of the race.
Overcoming Christopher Bell in the pits, Bowman then took the opportunity at the restart to clear Logano and long-time leader Hamlin – who led 207 laps in the 400-lap race – to secure the third NASCAR Cup victory of his career, and his first since the 1 March race at Fontana last year.
Hamlin was left to be content with the runner-up spot, having swept to the two stage victories earlier in the race and having been on course to complete a clean-sweep before Bowman’s late assault.
In the first stage, Hamlin pounced out of the blocks in the pitlane during the first competition caution, which ended poleman Martin Truex Jr’s stranglehold on the race during the opening laps.
Hamlin had to contend with Truex once more at the start of the second stage, with the 2017 NASCAR Cup champion making a play for the lead 13 laps after the restart.
But after a skirmish between Ryan Newman, Kyle Larson and Austin Cindric which left Newman in the wall, another caution period prompted a round of pitstops, which Harvick took advantage of to briefly lead – but the Stewart-Haas Racing driver was soon passed by Truex and Hamlin.
With the leaders opting for a round of stops under the green flag, Penske’s Brad Keselowski stayed out to try and make it to the end of the second stage – but Hamlin and Truex soon dispatched him on fresh tyres, as did Logano.
At the start of the final stage, Logano then moved past Truex to capture second, and set about putting Hamlin under pressure. The Penske driver made a move with 65 laps remaining, retaining control of the race after the lead pack all made their final green-flag pitstops.
But after Harvick’s incident, Hamlin moved past Logano’s Ford Mustang for the lead once again in the pits – before the two shed positions to the charging Bowman.
Bell completed the race fourth ahead of early leader Truex, ensuring three JGR Toyotas made it into the top five.
Aric Almirola ended the day as the highest-placed Stewart-Haas driver in sixth, ahead of Hendrick’s William Byron.
Kyle Busch managed to rescue eighth after being pinged for a pit commitment line violation, forcing him to serve a drive-through penalty which took him off the lead lap – but Busch was allowed to make a free pass to unlap himself ahead of the final restart.
Matt DiBenedetto and Austin Dillon completed the top 10, ahead of Ryan Blaney who had run within the top five during the opening stage. Reigning Cup champion Chase Elliott had to be content with 12th.
Hamlin remains on top of the points standings, but remains winless so far in 2021 despite having extended his lead over Truex.
NASCAR Cup Richmond results – 400 laps