I am reading conflicting advice on the web. The Magento 2 documentation says that Varnish is highly recommended and will speed up the site. Some other articles on the web from Magento experts say that Varnish is only useful to reduce server load on a high traffic site, and is not worth the added complexity of configuration for a low volume site.
We have a powerful dedicated server running Magento 2 with low traffic volume and the dynamic pages load slow despite the computing horsepower. It is much slower than static pages would load, so I'm thinking that Varnish would speed it up quite a bit. Is my assumption correct?
Varnish (or LiteMage Cache if you use LiteSpeed Web Server) will definitely speed things up even if you do not have a high traffic as long as the caches are warm (they won't be useful if you constantly clear your caches and don't have enough time to re-populate or re-warm the caches).
Varnish is very valuable as it caches non-user based content, so if your catalog does not change often you'll see a lot of benefits on your CPU time. Magento 2.0 has it available out of the box, so the only thing you need to do is to use VCL from the configuration.
Considering that in Magento 2.0 it is available out of the box, the only thing apart from varnish installation is to apply VCL supplied by Magento.
But beware, that your Magento implementation must follow specific rules:
But Varnish will not help to solve the performance problem in general, it will just help you to serve cached pages faster unless you pre-warm your varnish cache on the constant basis.
I also highly advise to check if you need all the modules that are installed on your Magento store, in Magento 2, every module is enabled by default, so some functionalities might add redundant computing complexity. For example: if you are not using color swatches, you might want to consider to disable the module completely:
bin/magento module:disable Magento_Swatches