Firefox is way more standards compliant than IE. IE6 is just about the worst, and many users still use it. IE7 made headway in trying to adhere to the same standards other browsers use but still fell short of the mark. With the release of IE8 there is to be more of a standards compliant framework for code and class interpretation.
Firefox is also the better browser for developers; the range of open source add-ons for programmers / designers / developers is fantastic and really helps with debugging and building of websites.
IE, however, is in my opinion more user-intuitive. And that's why it's still so popular. And let's not forget it's bundled with every copy of Windows.
The reality of the situation is that all the main browsers (IE, Firefox, Safari) interpret things slightly differently and so developers and designers have to test websites in each browser and code accordingly. It's a bitch but stems back to the lack of any adhering to web standards when the IE / Netscape browser wars started. Companies like Netscape and Microsoft were focussed on developing new features so that their browser didn't look like it was 'falling behind'. The downside to this was that less time was spent on fixing bugs.
Microsoft and Netscape were also very keen to introduce their own proprietary code (such as the awful 'font' / 'marquee' tags etc) without seeking approval from W3C or any other committe, and so didn't concern themselves with alignment with any web standards specifications. In most cases this proved harmful as far as general web standards are concerned and so you now find the web littered with websites that do not validate properly and appear differently in different browsers, and often in the case of IE6 and IE7 different versions of the same browser!!
The sad truth is that we're still a way off all browsers behaving the same way. I'm not talking about 'features' but I mean the core interpretation of code and presentation style. As Microsoft release new versions of their IE browser websites that have displayed properly for a long time suddenly appear broken. It's no fault of the designers, its just the browser companies changing the way their product interprets the data it's fed.
And then you have to ensure it looks the same on all the Mac browsers...