Magento is a very complex solution for large shops that require good hardware base to handle more than 500 products. Although even though there is a lot of resources to start with Magento.
I have personally found out that building themes is really easy once you find your way around few annoying things like XML layout dependencies (there is barely anything documented on XML, which is the base for making good themes for Magento) and objects in PHP (some functions and data is not accessible from certain parts of the template just because).
I'm very comfortable with working and writing my own apps in OO PHP but stuff that Magento pulls off sometimes is really annoying and also directory structure and the way themes are being handled is awkward...
On the other hand, PrestaShop is fast (after few tweaks), but still requires some work in the back-end. I am developing a lot of back-end modules to help people get the most out of this system as it's worth it. Plus the community is growing and developers are fixing everything they can.
One more thing: writing both, back-end and front-end modules for Prestashop is incredibly easy, plus using SMARTY for templates is a good choice.
Edit: Magento is very easy to break during or after deployment (especially between localhost and a hosted space) and maintenance in SVN might be a pain for inexperienced devs.