TL;DR
Caching trades storage for speed. HTTP caching (browser, CDN) reduces network requests. In-memory caching (Redis) reduces database queries. Database query caching reduces computation. Each layer has different tradeoffs. Use the right tool for the right problem.