There are two types of motors that I've heard of being used in CNC machines. Within those two types there are many variables and different types, so this is by no means a complete, all encompassing list of all features and possible types. This is only to briefly describe the two types of motors.
Stepper Motors - Stepper motors are wound in such a way so that they can be controlled in "steps", the controller board sends a "step" to the motors and it's supposed to turn an exact degree. I say "supposed to turn" because there are cases when the motor does not turn and it stalls, and, in my experience, is the biggest problem using stepper motors. Basically, if you try to push your machine too hard or too fast it could stall and ruin your workpiece. Stepper motor systems are cheaper and easier to set up and configure in the long run, which is probably why they are the most popular among the hobbyists. Stepper motors have a speed to torque ratio that looses torque at higher speeds.
Servo Motors - Servo motors are more like a standard motor with an encoder that feeds back information to the computer about it's position. If the controller tells the motor to turn a certain distance, it can tell the computer that it's actually gone that distance, so there is less ruining of workpieces. Servos have a more consistent torque at all speeds, but they are more expensive and the setup and controlling systems are more expensive, essentially putting them out of the price range of most hobbyists.
I am sure there are many more topics that can be covered here, again, this is just a basic overview, and there are better sites if you want more detailed information about steppers and servos. Since, in my opinion, stepper motors are more prevalent in hobby cnc machines, the rest of the discussion will be based on stepper motors. You should just know that there are always choices.