Two dreadful errors ended Real Madrid's slim hopes of winning the Liga title as Celta Vigo claimed a shock 2-0 victory on Sunday.
Back-to-back draws with Valencia and Real Valladolid left Madrid needing to win their two remaining fixtures and hope that Atletico - with a better head-to-head record against their city rivals - slipped up in both of theirs.
But despite Atletico only drawing at home to Malaga, Carlo Ancelotti's men are now out of the running after failing to do their part.
Real's defenders were their chief culprits, as mistakes from Sergio Ramos and Marcelo helped Charles to perhaps the simplest double of his career.
All eyes will now turn to the Camp Nou, where defending champions Barcelona will host Atletico in a mouth-watering championship decider next weekend.
Barcelona, who are three points adrift in second, will win the league with a victory while Atletico need only to avoid defeat.
Real were hampered from the off, with a thigh injury ensuring that Cristiano Ronaldo could not even take a place on the bench.
Fellow big-money recruit Gareth Bale was among the substitutes, while Sami Khedira started a game for the first time since damaging knee ligaments in November.
It was the visitors who started on the front foot, their first opening coming when Marcelo's powerful half-volley was deflected just wide.
But Celta began to press thereafter, with Fabian Orellana looking particularly threatening.
Ancelotti's side defended impressively to weather that spell without giving up any real chances and gradually began to impose their will on the game.
Their attacking intent almost led to an opener in the 35th minute, Isco forcing a superb reaction save from Sergio Alvarez with a low effort.
Another chance went begging when Alvaro Morata fired Marcelo's low cross wide - and Real were left to rue their profligacy as the home side took the lead three minutes before the break.
Ramos was the culprit, his slip leaving Charles to round Diego Lopez and slide the ball into the empty net from a tight angle.
As expected, Real came out positively after the break and almost levelled matters when Luka Modric shot over in the process of being brought down in the area by Jon Aurtenetxe, the referee turning down strong penalty appeals.
Undeterred, the visitors pressed forward further, with Morata and Isco again testing Alvarez.
But the latter's chance, in which he shot straight at the goalkeeper, prompted an immediate reply as Celta increased their lead.
Marcelo was at fault this time, selling Lopez short with an awful back-pass that allowed Charles to nip in and grab his second.
Real pushed desperately to get back into it late on, but the inspired Alvarez combined with some dogged defending to keep them out.
|Matthews completes Sunderland move|
|Podolski set for Galatasaray medical|
|Gundogan inspires Dortmund victory|
|Inter confirm Montoya capture|
|Murillo joins Inter, as Kuzmanovic and Obi depart|
|Falcao signing not a risk, says former Chelsea star|
|Deeney agrees new Watford deal|
|Confidence and service the key to Falcao success at Chelsea|
|No bids for ´Chelsea target´ Baba, claim Augsburg|
|Derby swoop for Ince|
|Fiorentina consider legal action over Salah ´no-show´|
|Chelsea the team to beat in the Premier League, says Neville|
|Storari exits Juve for Cagliari|
|UEFA removes FFP restrictions on Man City and PSG|
|West Brom hope for new owners within the month|
|Chelsea agree loan deal for Falcao|
|Kuyt eyes trophies on Feyenoord return|
|Chile v Argentina: History beckons ahead of Copa America final|
|Wallace extends Monaco loan|
|Mihajlovic wants to instill fear factor at Milan|
|Mignolet improving at Liverpool - Grobbelaar|
|Mumbai City name Anelka player-manager|
|Olivia the parrot predicts Japan to win Women´s World Cup|
|Lusitans coach blasts Bilic´s ´lack of respect´|
|Sakho eyes more Europa League wins|
|Gareca wants Peru to keep building|
|Chile ´no chance´ if Argentina produce their best - Diaz|
|Ocampos joins Marseille permanently|
|Europa League Review: Cloud-nine Brondby ignite opening round|
|West Ham 3 Lusitans 0: Sakho nets twice at start of Europa League journey|
|Holebas makes Watford move|
|Milan secure Adriano signing|
|Peru v Paraguay: Diaz counts cost of semi-final loss|
|Bastia hit out at reports of extra debt|
|Hernandez has successful surgery|
|Odemwingie signs one-year Stoke extension|
|Uth signs for Hoffenheim|
|Henen seals Everton return|
|Cattermole pens long-term Sunderland deal|
|United States v Guatemala: Klinsmann backs Dempsey ahead of Gold Cup warm-up|
|West Ham working on Jenkinson return - Gold|
|Milan agree deal for Bacca|
|Real buy back Vazquez from Espanyol|
|Richards leaves Swansea for Fulham|
|McShane signs for Reading|
|Giggs tells youngsters to seize US chance|
|Hammond pens Leicester extension|
|Only Schweinsteiger can decide Bayern future - Guardiola|
|Cech plans to play until he´s 40|
|Montoya arrives in Milan ahead of Inter move|
|Hernandez out of Gold Cup|
|US asks Switzerland to extradite seven FIFA officials|
|MLS Preview: Sounders seek momentum switch|
|Mexico 0 Honduras 0: Hernandez injury sours friendly|
|Hernandez taken to hospital|
|Garay in doubt for Copa America final|
|Wambach: USA peaking for World Cup final|
|Bassett ´an absolute hero´ despite own goal - Sampson|
|Japan 2 England 1: Late own goal breaks English hearts|
|Salvo quits as Valencia president|
|Costa not Ribery cover - Bayern director Sammer|