Difference between a microprocessor and a microcontroller

The key difference is that in a microcontroller, the memory (ROM and RAM) and the peripherals are fabricated on a single IC. A microprocessor, on the other hand, does not contain the memory and the peripherals in itself.  They are separately mounted and connected.

Microcontrollers are used for specific operations, such as to control and operate a washing machine or a traffic signal.  A microprocessor can be installed for a specific function in a larger system.  It is not designed for a single operation.

The speed of a microprocessor is above 1 GHz while the speed of the microcontroller is around 50 MHz.  

Microprocessors can handle greater complexity as compared to microcontrollers.   They also use more power than microcontrollers.