Monchengladbach confirmed on its website that the 22-year-old would be moving to Dortmund after the club agreed to pay his $22.5 million buyout clause.
"It's important for me to clarify that this wasn't a decision against Gladbach," Reus said. "I've had a wonderful time here up until now and Borussia gave me the chance to prove myself in the Bundesliga and to develop into the player I am now."
"I'll be sad to leave as it's been such an important environment for me. It was crucial for me to be up front and honest with Gladbach and not to drag it out. But I've decided to take the next step in the summer and I want to play in a side that can fight for the title and give me the guarantee of Champions League football. Dortmund can do that."
Reus was also a target of league-leaders Bayern Munich, but will move to Dortmund on a five-year contract, the club said.
The Germany international has been in fine form this season for Monchengladbach, tallying 10 goals in 15 league games to lead the team.