Optimization is an entirely home-grown activity. It involves things you do to your website, to your databases, and even to your host servers. Caching involves a lot of those things, but its primary goal is to dictate what happens at the user’s end. It tells the user’s device to store information in their temp files, their RAM, their browser and so forth. Think of “Optimizing” as fixing up your car, and “Caching” as the route you will drive people when you arrive in your car.