It was also luck.
The rovers had their power requirements and solar panels designed so that 90 days of mission could pass before getting occluded by martian dust. Once on Mars NASA discovered that occasional whirlwinds, which existence was unknown during mission planing, cleaned the panels back to usable current output levels.
I'm having a hard time accepting we can land a rover on another planet, but we can't find a way to clean some dust off of it.
http://www.newscientist.com/blogs/shortsharpscience/2008/11/...
They did consider various options, but nothing met the requirements.
"In short, there were possible methods, but nothing simple and light and certain. And the rover developers didn't have the time, the mass, or the leeway to experiment. Attractive though the idea was, this mission couldn't afford to try it."
There's a lot riding on MSL landing safely, because there's nothing solid after MSL right now. There used to be a 2018 rover, but it was recently cancelled.
This is absolutely amazing engineering. I would love to see NASA double down on robotic exploration (and mining) of the solar system for the next decade or two.
Really advance the state of art of robotics, make discoveries that would be extremely difficult and costly for people to do, and get many more missions per/dollar than a manned program could.