The 26-year-old Halep battled through a difficult first set, then easily won the second in a rematch of last year's quarter-final contest with Garcia which was also won by the Romanian.
"The first set was really tough," Halep said. "I just didn't give up at all in the first set. After I took it, I felt more confident.
"I felt that I'm moving better, I'm playing better, stronger. [Garcia] went a little bit down with energy after she lost that set."
The top-seeded Halep hammered 19 winners and won 77 percent of points on her first serve in the 88-minute contest.
Garcia started quickly but could not keep her unforced errors in check, finishing with a total of 31. She earned her only career win over Halep in five previous meetings in the 2017 WTA Beijing final.
Halep moves on to the final four where she will face Aussie Ashleigh Barty, who ousted giantkiller Kiki Bertens of the Netherlands in straight sets 6-3, 6-1.
- Three matches in two days -
Halep, the 2016 tournament champion, was playing her third match in the past two days after earning two wins on Thursday over Anastasia Pavlyuchenkova and 38-year-old Venus Williams.
After the match Halep slammed the WTA about her scheduling, saying she regularly has less time to recover from matches than her opponents.
"I am very upset about it," said Halep, who is first up on the Montreal courts on Saturday.
"I talked to my team about this and all of them are upset... I never complained about the schedule, but today was enough." On Friday, Halep broke Garcia in the fifth game of the second set for a 4-1 lead and had no trouble icing the win from there.
World number 16 Barty reached the semi-finals by reeling off nine of the last 10 games against Bertens.
"I never played against [Barty], so I don't really know what to expect," said Halep.
"But I know she's very talented. I just have to talk to my coach tomorrow before the match, trying to stay stronger on my legs, and trying to be with the energy at the highest level."
Barty was the more composed player in difficult, windy conditions as Bertens, who had seen off ninth seed Karolina Pliskova and eighth-seeded Petra Kvitova in her previous two matches, was undone by 31 unforced errors in the 55-minute quarter-final.
"It was really tricky conditions and we were both struggling a little," Barty said.
"I'm very happy to come through and get a little bit better during the match."
US Open champion Sloane Stephens was just as ruthless as Barty in her quarter-final as the third-seeded American made the semi-finals for the second straight year, seeing off Anastasija Sevastova of Latvia 6-2, 6-2.
Stephens will face defending champion Elina Svitolina, who came back from an 0-4 deficit in the first set to eliminate Elise Mertens 7-5, 6-3.
(This story has not been edited by Business Standard staff and is auto-generated from a syndicated feed.)