The Russian took the initiative early on, establishing an early break to race into a 3-0 lead. Bartoli soon settled into the contest, and struck back to level the match before taking it to a tie-break.
It took 78 minutes of play, but the French 11th seed finally edged in front by taking the breaker 7-4.
Makarova regained control in the second set, striking 13 winners while Bartoli made 12 unforced errors.
That helped Makarova to level the score and take the match into a deciding set.
It was then that Bartoli's challenge faltered as Makarova punished her with some incisive shot-making to establish a 5-0 advantage.
Despite struggling with the pace, Bartoli managed to hold her serve for the first time in the set, before breaking Makarova as she served for the match.
She then had to fight off match point on her own serve, and did so tenaciously.
Makarova brought up match point once again on her own serve, but the pressure on her shoulders began to show as she struggled to get over the finishing line.
Amazingly, Bartoli eventually broke the Russian to get back on serve and looked to have the momentum.
However, it was all in vain as she conceded her next service game to bow out of the tournament 7-6(4) 3-6 4-6.
Makarova will now play Angelique Kerber in the fourth round.