The authorities halted rescue efforts shortly after they began, saying there was a risk that more train parts and debris could slam down onto the road.
A video on local channel Milenio TV showed the structure plummeting onto a stream of cars near the Olivos station in the southeast of the city at around 10.30 p.m. local time, sending up clouds of dust.
At least two train carriages precariously hung from the damaged overpass. Initial rescue efforts saw medical and fire crews trying to access the carriages. The army was also in attendance.
Speaking to reporters at the site, Mexico City Mayor Claudia Sheinbaum said it appeared a girder had given way on the overpass but the cause was being investigated.
She said the rescue had been suspended as the structure was very weak. A crane was working to stabilise the train carriages so rescuers could resume their search for survivors.
The authorities were working to identify the dead, which included children, Sheinbaum said. One person trapped in their car underneath the wreckage had been rescued alive and was taken to hospital. Seven of the people transported to hospital were in a "grave condition" and undergoing surgery, she said.
The Metro 12 line that runs over the collapsed overpass was built almost a decade ago when Foreign Minister Marcelo Ebrard was mayor of Mexico City.
"What happened today with the Metro is a terrible tragedy. My solidarity is with the victims and their families," Ebrard said on Twitter. "Of course, the causes must be investigated and responsibilities defined."
Ebrard and Sheinbaum are seen by many political observers as the most likely successors to President Andres Manuel Lopez Obrador once his six-year term is over in 2024.