In the context of having a list of user that has an icon next to their name, is it better to cache all images of Gravatar for few minutes or it's fine to directly display the image from Gravatar? The list is around 200 users on every pages.
The avatars are already cached in the browser cache so don't try to implement your own caching mechanism. But is it really necessary to display 200 avatar images on each page?
Linking to them will be simpler and it will allow Gravatar to figure out how the caching should work. (e.g.: how long the browser cache should be?)
Let Gravatar do the caching. Most likely the a local isp, if not browser, would have them cached further downstream already.
Not sure how you were going to hold them on your server, but it's better web performance to load from multiple domains anyway, allows more parallel downloads.
In fact, if you cached them yourself you might do a lot more damage than good, as it's more likely someone is going to have the popular gravatars cached from a visit to some other site, SO for e.g.