Woocommerce: it's just a Wordpress extension, best for small websites, best for few products (SKU) catalog. It doesn't require users to have speacial skills. It's quite easy to use. Very economic because it works with shared hosting.
Prestashop: Mid to large size websites, no need to be a developper, lot of extensions but prices can be outrageous (Elasticsearch for exemple is not included and paid Elasticsearch extensions are quite expensive). Great templates (included some free ones on Github). Prestashop is also very economic because it works with shared hosting.
Magento: recommanded for mid to (very) large size websites but Magento requires dedicated server (expensive and not for everyone). You need to have some skills or ask for help (paid) from a Magento agency or from freelance developpers (paid). It's not for everyone. Think twice before choosing this one.