Ronaldo marked his 150th European game with second-half goals after Bale's stunning early volley gave Real the lead at Dortmund's Signal Iduna Park
Pierre-Emerick Aubameyang scored Dortmund's consolation goal with just over half an hour left, but the Germans were simply out-played by holders Real.
Having also netted twice against APOEL, Ronaldo has now scored four goals in just two Champions League games this season.
"I'm happy for Cristiano... again! I'm delighted for Ronaldo and Bale," said Zidane.
More From This Section
"It is difficult to play in this stadium, we have never won here, so this victory was important to us, and the whole game was good for us from start to finish," said Zidane.
"We had a lot of ball possession, that was the key.
"Dortmund played as impressively as ever, but we compensated well."
Dortmund shaded possession and matched Real's tally of 16 shots on goal and Zidane wanted to see more chances converted.
"The side worked hard - Isco, (Luka) Modric, Casemiro and (Toni) Kroos were marvellous.
"Everyone was brilliant. It was a tremendous game."
The result leaves Real top of Group H, just ahead of Tottenham Hotspur, who beat APOEL 3-0 away, with Dortmund third and six points adrift of Spurs, who they also lost 3-1 to in London.
Dortmund coach Peter Bosz gave an honest appraisal of his team, who were better than Real in virtually every statistic - apart from the scoreboard.
"We were just too late against a side who barely made a mistake and we have to defend better.
"We didn't put any pressure on the ball during the game and it's difficult against an opponent like that.
"We were always too late, we have to analyse the performance and do better in the future.
Dortmund should have been awarded a penalty with 13 minutes gone when Real captain Sergio Ramos cleared Maximilian Philipp's shot off the line and the ball deflected off his hand.