Ten-man Madrid lost an unbelievable match 3-2 at the Santiago Bernabeu, Lionel Messi scoring his second of the match – and 500th for the club – with the last kick of the game.
Zidane's men had overcome Sergio Ramos' red card for a foul on Messi by seemingly salvaging a point courtesy of substitute James Rodriguez's effort five minutes from time.
But even though a draw would have put them on the brink of securing their first league title since 2012, Madrid were pushing for a winner when Barca picked them off in the second minute of stoppage time, the Argentina international converting Jordi Alba's cutback with a trademark finish.
"I cannot be happy," Zidane told reporters after his first loss in three Clasicos.
"We are disappointed with the result. When you get back to 2-2 with 10 men you have to think a little more and defend together.
"We thought that we could grab a third goal. From a throw in we were out of position and then what happened happened.
"Playing to push up when we have 10 men is dangerous and there was room for us to do something else."
Zidane acknowledged Madrid had paid the price for failing to take huge chances in either half of a match that saw Barca goalkeeper Marc-Andre ter Stegen make an astonishing 12 saves.
The Madrid boss continued: "We created a lot during the whole game. We had many goalscoring chances throughout the match, but couldn't bring the game under control.
"When you don't kill the game off, this can happen, and it did. I have to look at the game again but I wouldn't have changed anything.
"Messi made the difference for his team. He has scored two goals, but it is not only Messi - we didn't control the game well in the moments that we could have done damage to our opponent.
"We cannot be happy, it is the first Clasico for me at home and the result is bad. We lose three points but there is a lot of the league still to play.
"We were not going to finish La Liga in this match, but of course it would have been better to win. Overall we did not deserve to lose, although football is like this.
"Now we have to think about the next game on Wednesday [away to Deportivo La Coruna]."