I. Depending on your distribution of Linux, and your choice of hard drives, you may be running Linux under the most conservative settings for hard drive performance. This is the single biggest reason for a slow GUI in Linux; hard drive speed matters more than processing power. (it goes in this order of importance: hard drive->memory->processor) You might need to learn how to use the "hdparm" utility. Check out this thread, where we discussed the problem: thread619-160866. Also, You might be using the most resource-intensive settings for your GUI. For example, real-time drawing of windows while you drag them consumes a lot of resources.
II. The Linux GUI is a different animal from the Windows GUI. Actually it is many different animals, which can be combined in many different ways ;-). In Windows, the GUI is integrated with the OS, using more kernel-level operations, which allows it to perform quickly, but at the cost of stability. When the Linux desktops try to compete directly with the Windows desktop in features and useability, it tends to run slow, as you can see with KDE or Gnome. (actually, I think KDE is a little faster) But, there are many other desktop choices with Linux. For example, WindowMaker (wmaker), Blackbox, Afterstep, which are much faster, because they have a simpler structure. I find these very suitable to my needs most of the time. For example, Blackbox (
usually boots within one second. However, these take more work to configure and customize. Once you get them to your liking, though, you have a nice, fast desktop that blows away Windows for speed.
III. Often its not the GUI, but the applications. Netscape 6 is a dog on any system. Not to flame the mozilla effort, which I think is a great thing, but the fact that it draws the whole interface in the XUL scripting environment makes it extremely inefficient. They are making progress with performance, though. And Netscape 4.x will start up fairly fast in Gnome, but very slow in the other desktop environments. This is because it uses the GTK widget set for its interface, which is part of Gnome. So, when you are starting it up in another window manager, you have to load the GTK libraries from scratch. Ditto in reverse, if you want to run Konqueror, or Kwrite, etc... inside a non-KDE environment. Once again, you have to load the minimal QT libraries to run the application, if they are not already loaded by the window manager. (I believe KDE applications implement this better than Gnome, however)
The point is, there are so many factors involved that you will find big differences, depending on your choice of all of the above. Experiment around, and you will find your combination of choices that works best.