According to HTML Dog CSS allows alot of versatility especially with selectors. For example you can have a child selector, universal selectors, adjacent sibling selectors and attribute selectors. But the selector that is more commonly used is the universal selector and is widely supported by the most popular search engines.
The Universal selector (using the "#" symbol) matches any and everything. It's a declaration box. For example the form # will target every box with a form element. this makes sure that all the text and backgrounds of a certain color etc. have the same margin and size and padding etc.
In the other hand we have the CSS Reset, which is the process of resetting. More accurately it's setting. What it affects is the style of all the elements to a baseline value that helps you avoid cross browser difference due to their built-in default style setting. This helps you differ from browser to browser. An example of this it's how paragraphs are rendered by default. The CSS Reset topic was first discussed by Andrew Krespanis, in 2004. What he said in his article was that if he used the unversal selector at the beginning of his css file it would give him a margin and padding of 0. But in the end it would end up effected to the point were certain browsers removed the spacing in between and it would break off the spacing. In the end your css reset is what your browser first see's.
The reason why you wouldn't want to use a universal selector iss because it changes your whole look on you web page, and IE tends to do that the most, and since CSS reset is the most common and it is the one that browser see's first, it just so happens to be the one to have better results especially if you're including a certain look to your work and you want it to look the same with any browser used.