That is a question in broad perspective of Physics.
As hobbyist you would design things according to availability of motors in most cases.
For professional level you would need to consider a lot of things torque,speed,AC or DC operation.
The major constraint on motor operation is of thermal nature.
Operating temperature, ambient temperature, rise in motor temperature with increase in operating time or load,Available and required voltage/current,output torque required, output speed required,current required due to load, no load current,idle conditions,operational requirements in stall conditions.And a lot more.
You need to study some books on the topic or try Google.
Gear motors are used when use of economical low-power motors to provide great motion force at low speeds is required.
Servo motors are used for correct positioning systems.
Stepper motors are used where large power is required in compact size and good accuracy.
Hope that helps.