The team announced that Pavelski, 35, gets a three-year, $21 million contract.
Sharks general manager Doug Wilson said losing Pavelski will be felt for years to come. But he said that the sides couldn't get together on money or term.
"We wanted to feel that the team was close to winning," Pavelski said Monday, according to the team's Twitter account. "[The Stars] were a team that checked off a lot of boxes...It seemed like a perfect fit for us."
The Stars needed offensive help last season behind their top line of Tyler Seguin, Jamie Benn and and Alexander Radulov, They made a trade for Mats Zuccarello at the deadline, but he bolted to the Wild in free agency. Earlier Monday, the Stars reached agreement on a one-year, $1.5 million deal (plus incentives) with former Ducks star Corey Perry. He was bought out by Anaheim and is hoping to resurrect his career.
"You look at where [the Stars] were this year and the personnel that they have up and down the lineup. I want to win again and I think Dallas is a great fit for me," Perry said, according to the Stars. "Signing Joe Pavelski is another big bonus for that hockey team."
Pavelski had said he planned to return to the Sharks after totaling more than 60 points for the sixth straight season by scoring 38 goals with 26 assists.
But the typically durable Pavelski suffered a number of injuries during the Sharks' postseason run. He was concussed in the first round when his head bounced off the ice in Game 7 against the Vegas Golden Knights and missed all but Game 7 in the second round. He didn't play in the Sharks' last game of the season -- a Game 6 loss to the St. Louis Blues in the Western Conference finals -- after aggravating a knee injury and underwent hand surgery in early May.
Pavelski has spent his entire 13-year career with the Sharks, posting 355 goals and 406 assists in 963 games.
Information from ESPN's Greg Wyshynski was used in this report.