a browser supports a spec, a validator checks if your code is correct according to that spec. If it is not a browser (certainly older ones) will have troubles with it.
For example if you wrote ‘invalid’ HTML for example, the browser will guess what you meant, and different browsers will guess diferent or even guess in a way that f**** up your site.
When publishing anything big, the last thing I do before publishing it is a quick validate.
But I would never put the Icons on my site (except for my portfolio where it looks ‘cool’)
HTML5 (insofar it still exists under that name) ~is~ a standard of HTML. Not a complete or useful standard (IMHO), but a standard nonetheless. So what you’re saying there is not very true.
You write your web pages using one piece of software, but you need them to be displayed using dozens, maybe even hundreds, of different applications, in different situations. You can test your site in the most common few to make sure it works as you intended, but beyond that, there are loads and loads of programs people will be using to look at your website that you don’t have the time or resources to test in, and in some cases that you will have never even heard of.
Because of that, it’s important to make sure that your pages use valid and well-formed code – the HTML, CSS and Javascript. If they don’t, there’s a danger that they will break in some browser or other … possibly in one that hasn’t even been written yet. Because browsers are supposed to follow the standards set out by W3C (and since the launch of IE8, all mainstream browsers have got pretty good at this, although there are still some glitches), but are not required to guess at what you probably meant when they come across errors, if your page has errors in it then you’ve no guarantee that your page will work consistently in all browsers.
By using the W3C validators, you can ensure that your code is syntactically valid, which significantly reduces the chance of it causing any browser to choke.
And with HTML5/Fred, you are still required to use syntactically and semantically valid HTML – that’s the whole point of having the new standard. There’s nothing out there that says “it doesn’t matter if you use these tags correctly or not” … because if you cobble your page together any old how, with loads of errors in, how are browsers supposed to know how to interpret it?