We all know we should be caching to reduce our application's workload and make it run more efficiently. The HTTP protocol lets us solve this problem quite elegantly, but doing it properly isn't exactly a walk in the park. How do you prevent stale caches? Which HTTP headers should you be using? And what on earth is ESI? This talk will focus on the caching mechanisms HTTP offers us as Symfony developers, and how we can utilize them for maximum benefit.