The 32-time Spanish champions fell four points behind Atletico Madrid at the top of La Liga after a 2-2 draw against Valencia on Sunday and Benitez was dismissed following a board meeting held on Monday afternoon.
Club legend Zidane, who has until this point managed Madrid's 'B' team, has long been linked with the top job and will now take charge.
Real president Florentino Perez said: "I am here to say that the board has just decided, in a difficult decision, especially for me, to end the contract of Rafa as first-team coach.
"I would like to make it clear that he is a great professional.
"Zinedine Zidane knows better than anyone what it is like to stand at the front and lead Real Madrid. Throughout his career he has always been able to face up to huge challenges.
READ MORE | POLL: Are Madrid right to sack Rafa?
"He is one of the greatest players of all time. Zinedine, this is your club, your stadium and you have all our support. Zidane you are, from this moment, the trainer of Real Madrid."
Benitez had struggled to win over supporters after replacing Carlo Ancelotti in the summer and Madrid could fall five points behind Barcelona if the defending champions win their game in hand.
Real cruised through their Champions League group, winning five of their six matches and scoring 19 goals, but suffered embarrassment in the Copa del Rey when they were disqualified for fielding an ineligible player.
Benitez's position came under particular scrutiny in November when Madrid suffered back-to-back defeats against Sevilla and Barcelona, the latter a 4-0 humbling at home to their greatest rivals.
The former Liverpool and Napoli manager enjoyed an 8-0 victory over Malmo in the Champions League and a 10-2 thrashing of Rayo Vallecano but defeat to Villarreal and the draw at Valencia has cost him his position.