Atletico took the lead early on when Alvaro Morata capitalised on slack defending from David Alaba to head home Samuel Lino's cross.
Then it was former Barcelona forward Antoine Griezmann's turn to score a header, nodding in from Saul's ball.
The French forward was thwarted by Kepa Arrizabalga as he looked for the third.
Toni Kroos cut the distance for Madrid before the break with a hard, low strike which ripped past Jan Oblak and into the bottom corner.
Eduardo Camavinga had a goal ruled out for offside before half-time, but it was Atletico who scored the next one that counted, with Morata heading in again, with Alaba once more culpable, along with Camavinga, with neither player marking the striker.
Madrid had some long-range efforts but did not come close to fighting their way back into the game.
"What happened? We did not start the game well, we did not defend well," said Madrid coach Ancelotti.
"They went 2-0 up and they defend very well, look for quick breaks, in that sense Atletico did better than us.
"A lot of times opponents have gone in front and three times we've been able to come back... but it was too much to recover.
"Today it was not easy, I can say that, it was not a good night. We did not defend as well as we usually do ... Atletico took advantage."
Topics with the letter