The Belgium international signed for the German giants in 2018 after a season in China with Tianjin Quanjian.
But he told Goal that he had the chance to clinch a Premier League move before deciding to put guaranteed game time in the Bundesliga first.
"First (Dortmund sporting director) Michael Zorc approached me, then (manager) Lucien Favre called me," said Witsel.
“And I had the feeling that I was the first choice for Dortmund. It's important to feel good when you go to a new club.
"So after the talks with Zorc, Favre and (CEO) Hans-Joachim Watzke, I decided to join BVB. Dortmund is a top club - and I really wanted to join a top European club.
"Maybe it was my last chance at 29 years old. It was the right decision."
"I could have joined Real Madrid when Jose Mourinho was there," he said.
"But then Real signed Luka Modric, so a transfer to Madrid made no sense to me.
"Shortly before the end of the transfer period Zenit called. I had good discussions with the people responsible and finally agreed. I'm an open person and wasn't afraid of Russia."
Witsel’s move to St Petersburg came in 2012 and he remained at the club for four years, although he came close to a Serie A switch during that spell.
"My contract with Zenit expired and I wanted to move to Turin and Juventus," Witsel said.
"I had already passed the medical check and actually only had to sign the contract.
"I waited all day in the office and Zenit told me to come back. In retrospect, that was perhaps a twist of fate. Maybe it was just not the right time."
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.