Cache is memory storage used to speed up websites. WordPress speed can be improved by saving pages in variety of caches. The speed benefit of using a cache is that a page read from memory cache doesn’t require either computing power (no code is executed to build the page) or database access (no data from the WordPress MySQL database is required.) So caching is a technique to speed up your user’s site experience by temporarily saving pages as plain old HTML and delivering those to your visitors without having to hit the disk or the database as often.
Browser cache is local user storage that each blog visitor saves in their own browser. The settings for how long your WordPress pages are kept in browser cache can be controlled by your server (with the .htaccess file) or by caching plugins such as WP Rocket, or WP Super Cache.
Disk cache is storage on your server. Although accessing it does requires a single disk access, it does not require multiple database calls. All servers can be configured to use disk caching with the use of caching plugin.
Memcache is a type of memory storage that is even faster than disk, but not available on all hosts.
For configuring cache usage on WordPress sites, I recommend WP Rocket, but I know many people are happy with WP Super Cache. I no longer recommend W3 Total Cache.