ATM was well ahead of MPLS, by years. The technology of the day is what made the case for ATM. Using fixed length containers (cells), it greatly accelerated switching, and provided configurable and predictable latencies.
RSVP was just getting off the ground, and could only support QOS in a single span (to do end-to-end t had to be manually configured per span), where ATM could provide complete and reliable end-to-end QOS as a matter of applied policy.
Back in the day I worked in the Interoperability Lab at Anixter. We set up side-by-side demonstrations using models of customer's networks versus the same network with an ATM core (and in some cases ATM to the desktop). With tools like Chariot and Spirent NetBits we could objectively evaluate performance, and ATM won every time.
Fore Systems (now Marconi) made some great stuff. Cisco sucked at ATM, so they hated it (a chicken and egg situation), Nortel had some nice edge equipment, but their core sucked. Fore Systems is gone, Marconi bailed on ATM (probably a wise move), Nortel died, and Cisco got their GigE and moved forward, though it took Extreme kicking their ass in performance to get 'em moving.
Certainly there are better technologies now, mostly because technology (primarily processing power) has advanced. But back in the day, ATM beat everything, and we could prove it.