Gasquet, ranked ninth, broke Dodig twice in the first set and once more in the second set, where he saved three break-points of his own.
He sealed the win on his own serve when Dodig's forehand from the back of the court was wide.
"I played a solid match. I served well, didn't really drop off at all during the match and managed to save some break-points," said Gasquet, who lost the Open Sud de France final in Montpellier to countryman Gael Monfils earlier this month. "I'm happy to be in the semifinals. It's the first time I've reached the semifinals here so I'd like to get to the final."
Gasquet next faces third-seeded Ernests Gulbis of Latvia, who won 6-3, 7-6 (1) against No. 8 Nicolas Mahut of France to reach his second consecutive semifinal. He leads the 23rd-ranked Gulbis 2-0 in the career head-to-heads.
Tsonga, who improved to 4-0 against Roger-Vasselin, next faces the winner of the last match between Frenchman Michael Llodra and Germany's Jan-Lennard Struff.
"Edouard played very well. He took his chance in the tiebreaker and was very aggressive," Tsonga said. "It was tricky and I'm glad to have got out of it. I hope I recover well so that I can play a good match tomorrow."
Tsonga broke Roger-Vasselin twice in the second and third sets, and sealed victory on his first match point with a backhand pass down the line. But Tsonga, who had 39 winners, was unhappy with his overall performance.
"I got through with my serve tonight," he said. "The rest wasn't great and at one point I wanted to leave the court because I was ashamed of how I was playing."