Rybakina carried the momentum from her straight-sets semifinal upset of top-ranked Iga Swiatek into the final and beat Sabalenka for the first time in five career meetings.
For the first time in their budding rivalry, the match didn't go three sets. Sabalenka went the distance to beat Rybakina in the Australian Open final in January. In that match, Sabalenka fired 17 aces and rallied from a set down to win her first Grand Slam title.
This time, the 10th-seeded Rybakina had seven aces and No. 2 seed Sabalenka committed 10 double faults. Sabalenka won just 11 of 35 second-serve points.
"I would say that I was super disappointed with my serve, so I was back to old habits," she said. "I was like a little bit overreacting on things, and I wasn't there in the first two games in the second set."
Rybakina broke for leads of 2-0 and 5-2 in the second set before Sabalenka closed to 5-4. But Rybakina served out the victory in just over two hours.
Rybakina earned $1,262,220 for the victory; Sabalenka earned $662,360.
"It was an incredible two weeks here," Rybakina said on court during the trophy ceremony. "It was an amazing atmosphere. I want to congratulate Aryna, as well, amazing results this week."
Hearing that, Sabalenka stuck her tongue out at Rybakina, the current Wimbledon champion.
"This was the first time it went my way," Rybakina told the crowd.
With that, Sabalenka stepped forward, took the mic and said, "I will make sure it was the last one."
Then she smiled -- a fun moment of levity after another intense match between the women.
Rybakina improved her match record to 16-4 this year; Sabalenka fell to 17-2.
With the win, Rybakina will move up to No. 7 in the world rankings.
Information from The Associated Press and ESPN's Alyssa Roenigk was included in this report.