Why do we need caching?
Caching speeds up performance, by storing the results in memory or in a distributed cache like a fast Redis database, you can also store cached data in files if it makes sense.
A distributed cache is needed in case you run multiple instances of an application to scale for availability of your application. The instances will run on multiple Docker containers, in a Kubernetes cluster or just on more than one Azure App Services. In that case, the instances should share a cache.
Most application caches are in-memory caches that store data for a short period of time. This is good for most scenarios.
Also, browser do cache the websites or the web applications output. The browsers usually store the entire result in files. As an ASP.NET developer you can control the browsers cache by adding HTTP headers that specify whether the browser should cache or not and that specify how long the cached item should be valid.
A browser cache reduces the number of requests...