God, where to begin?
1.) It's a central repository for every setting in the entire system. It resides in a single location on a single disk and the slightest corruption could wind up wiping your entire system configuration. (HKCU is the exception - this is stored in ntuser.dat - but almost nothing uses it anyway)
2.) It has a very weak security model and any given program can read or write to any other application's registry keys.
3.) Although keys are indexed using ASCII text, the registry file itself cannot be altered using a text editor. Many of the keys (COM, driver) are also GUIDs transcribed in text mode and are not human-readable anyway.
4.) You ever hear the phrase "Use the right tool for the right job"? Microsoft's attitude toward the registry is "The only tool for every job". All configuration information is stored there including the machine-readable portions. COM linking, file extensions, everything. Vista is moving away from using the registry - and moving to loose XML files as the new Do-Everything solution.
5.) Networked operating systems and static system registries don't mesh well together. A registry is supposed to be a system-specific configuration file, but since almost everything in Windows is done using the registry, roaming profiles are forced to carry a portion of that registry with them. Good luck getting that to work on an arbitrary machine in your domain.