Li won her only previous match against Bouchard in straight sets at Montreal in 2012.
"We had a tough battle last time, and I think I didn't have a lot of experience back then," Bouchard said. This time I think I'll be ready."
Li beat two 16-year-olds in the opening rounds and had to save a match point against Lucie Safarova in the third. Against No. 28 Pennetta, she was relentless, keeping the mistakes down while going for her winners.
"After saving the match point, I think I got a lot of confidence," Li said of her close call in the third round. "Even more belief in myself."
Li lost her serve just once -- while leading 5-0 in the opening set -- and finished off the 67-minute match with an easy forehand to the open court.
The Associated Press contributed to this report.