Knowing the APIs
I use both .NET (C# and VB.NET), Java and C++ on both Windows and Linux. Apart from the core API's (which, for Java and .NET are *huge*), there are also the large number of 3rd party APIs that I'm required to use.
Personally I cannot remember all of the (probably hundreds of thousands) of methods on the (probably tens of thousands) of Classes and Libraries over those platforms and APIs. Maybe some are capable of this feat, but I hazard a guess that most aren't.
I have a decent knowledge of the basic libraries and classes and know where to find what I want, but for the detail I rely on the IDE to give me prompts and hints.
I suppose if you are a specialist in a large organisation / team and concentrate on a subset of 1 platform then keeping all you need to know in your head is possible, but I work for a small ISV (9 developers in total over (currently) 5 projects and, like many in that situation, do not have the luxury of specialisation.
Maybe there are some superheroes that can keep it all in their heads, but I cannot, and I suspect that I'm not in a minority in that respect.
For me a helpful IDE is essential.
Comparing the two I use most frequently (VS2008 and Eclipse (Gannymede)) I can honestly say I much prefer Eclipse. It gives me the help I require when writing code while VS2008 attempts to straight-jacket you into Wizard generated splurges of code while offering little support when have to go it alone. I have also found the context sensitive help in VS2008 to be next to useless. Highlight a Class / Method, hit F1 and almost a minute later up pops the "help" for the wrong thing. Usually the name is correct but its the wrong Class or Method (e.g right method name but wrong Class or right Class name but wrong namespace.)
The fact that VS2010 appears to have moved further down the bloaty-wizard route doesn't fill me with joy at the prospect of having to migrate to it.