When a user visits your site, they are usually a guest, with no items in their basket, so the HTML for each is identical. Search engines like Google, Bing etc also see the same content
These days your website is ranked not only on content, but also on how quick it responds, so search engines take into account the speed of your page generation. The reasoning is that the poor quality sites tend to have slower servers as they're cheaper. This helps separate the good from the bad for the vast majority of sites on the web. However, not all slower sites are due to bad servers, it can be because the server is mis-configured or requires a lot of processing to generate content on a dynamic site
PERFORMANCE
On my VPS (demo store), the home page as I write this is over 850 times quicker - This is the server side processing time to generate the page HTML. This is NOT going to affect CSS, images, JavaScript or any other files loaded by your browser when your browser starts generating content
To see the figures yourself take a look at the page cache bar that displays at the bottom of the screen on the site. This is only viewable to admin users logged in - Your customer's will never see this except on demo
REQUIREMENTS
FEATURES
WHAT DOESN'T GET CACHED