You know me. I'm going to give you a in-depth answer to a simple question. ????
If it's a high volume site you want to minimize the hits on the database through an object cache combined with a page cache. Great hosts will use redis for both. Also, for high traffic website that are delivering video (an you should almost always deliver video on-page, but not on-site), you should take advantage of various services on Google Cloud, Azure, or, my preference, AWS CloudFront.
If the users are geographically diverse, then you can use a higher end paid Cloudflare plan (as the free plan is not a true edge CDN but rather a pull-based temporarily distributed caching reverse proxy - say that 3 times), or use a true CDN with being on the lower side of the paid spectrum. There is a free "CDN Enabler by KeyCDN" plugin that allows you to connect with pretty much any CDN. I take advantage of a feature within paid Perfmatters instead of that plugin.
Most of the high-end or well configured hosts (like WP Engine, Kinsta, Pressible, Excess, and Pantheon to name a few) have multiple levels of caching built-in so there is effectively no need for any plugins. Bonus...great hosts eliminate the need for a lot of security add-ons which often further slow down websites. The only real security plugin that is needed is something that gives you 2FA. (Okay, maybe PatchStack for those who are not quick to do updates.)
If your site is low or medium volume and you are looking for a free solution, then I suggest the Cache Enabler plugin (version 1.4.9 specifically) together with some cache inclusions that I can provide if anybody goes that route. It makes static HTML files of frontend pages that are ready to be served up. You can run the site through Screaming Frog SEO and it will prime the cache by making all the pages ready to go.
If you inherited a site with crazy huge images (or still have users uploading from their phone), then using an adaptive and/or responsive image delivery system like Polish from Cloudflare (no plugin) or ShortPixel Adaptive Images or their new FastPixel service which I have not used.
Also, has a streaming platform so you can serve videos transcoded to the target platform as well. Sadly, their video player does not do video schema well so I would add on something like PrestoPlayer, which also has reasonable accessibility to boot. PrestoPlayer also serves up from other video platforms, including YouTube without allowing the user to click out.
In the end, I still strongly recommend perfmatters as it does a whole bunch of other things that will help out page speed. It's not a panacea against heavy pages or poor hosting, but it's a low hanging boost to mobile and desktop PageSpeed scores.
tl;dr: Get a better host. High volume sites should use different features within redis. Lower volume sites should use CacheEnabler 1.4.9 plugin. Add in a true CDN plus image processing if you are serving up images, videos, or have diverse geographic location needs.