Squid’s still fine and probably simplest if you’re not getting us to manage it.
We have used Varnish a bit on some sites, but mostly we are moving to Edge / Matrix Accelerator Cache which are built around https://github.com/pintsized/ledge . All 3 allow ESIs for caching components across multiple pages (e.g if the menu, footer or other components are the same HTML across many pages they can be rendered once for many page renders). Matrix Accelerator Cache allows permission caching at the proxy.