A dedicated flash is designed to work with your camera, it communicates with the camera, usually for things like TTL (through the lens) metering.
For example, if you have a dedicated flash for your camera (a Canon 430EX on a Rebel XTi), you can use E-TTL mode....which causes the 430EX to fire a pre-flash, which is read by the camera. The camera then tells the flash how much power to use for the actual flash when the shutter opens. This all happens in a fraction of a second, just before the shot it taken. When you change the camera settings, the flash (and metering) automatically adjusts itself. In a nut shell, it's an automatic setting for your flash. There are other benefits, like HHS (high speed sync) and auto zooming of the flash head.
A non-dedicated flash, on the other hand. Only gets a message from the camera of when to fire. Some of these flashes have their own metering system, some just have a manual power adjustment. So this means that you have to understand a little better, how flash works and how to meter or adjust for it. If you change your camera settings, you have to change the flash settings to match, or you might end up with poor exposures.
Non dedicated flashes are cheaper and they are great for using as remote off-camera lights. But if you just want to stick a flash on top of your camera and not have to figure it all out...then a dedicated flash is the way to go.