Однозначно VPS. Moodle очень прожорлив и требователен к нюансам. Используя VPS освобождаете себя от слудующих проблем:
- отсутствие на хостинге всех необходимых модулей php,
- запрет на запуск файлов и установку собственного ПО (это может потребоваться, если у вас будут формулы)
- жесткое ограничение на время выполнения скрипта и объём памяти
- на shared хостинге вас могут заблочить, если moodle начнёт потреблять много ресурсов, а он это может, тот же cron может загрузить БД на 100% на несколько минут.
Конечно большинство перечисленного зависит от хостинга. С VPS тоже могут быть проблемы. Вот у меня был один VPS - там был очень медленный диск, поэтому когда памяти не хватало и система начинала свопить, всё уходило в ступор, поскольку пользователи при этом нервничали, перезагружали странички, памяти ещё сильнее не хватало и свопилось ещё сильнее.
Но, с другой стороны, moodle разрабатывался под shared хостинг, поэтому если найдете такой, который вас устроит по всем параметрам, то можно и на нём