Recovery and Bootloader are explaind in an easy manner...
The primary purpose of Android Recoery program is to apply updates, run programs, wipe cache, format partitions, and reset a device. The default Android Recovery programs are limited in functionality than the custom recovery programs.
Why Android Recovery program is needed? All functionalities listed in above cannot be done while Linux and Android are online or running. Therefore, the Android Recovery runs in its own environment so the changes can be applied to the Linux and Android while not running.
Since Android Recovery can be used for making all sort of changes many manufactures lock the bootloader to limit the functionality of the Android Recovery program. Apart from giving the basic version of the program (Recovery) this version of the recovery program can only flash signed images or zip files. A signed image or zip file contains a special key that the only manufacturer can generate it and that is why the default Android Recovery programs with locked bootloader is useless to the users and developers.
The main purpose of locking the bootloader is to prevent the Android Recovery program to be replaced, by flashing it in fastboot mode, with one that does not limited by signed image and zip files only. This is why the first thing one need to do is to unlock the bootloader.
If your device already uses a custom recovery that means the device's bootloader was previously unlocked. Flashing a .sbf file using RSDLite for instance not only relocks the bootloader but also replaces the Recovery Program back to the default.
I hope the above explanation helps understanding both the recovery and bootloader.