Difference between fastboot and recoverymode in android
Recovery mode is small linux operating system where you can factory reset your deivce or update your device with vendors images.
Fastboot it's a tool which comes with the android sdk and you can use it to re-flash partitions of your device. Because fastboot starts before android and even when android isn't installed you can use it as an alternative of recovery mode in case recovery mode partition is corrupted. Every phone usually has fastboot,but some vendors has choose to replace fastboot with their tool. Like samsung, instead of fastboot it has Odin.
Now, fastboot is more useful because you can use it as a recovery method when you don't have another recovery method, a
Android device has 3 important partitions - Boot loader, Recovery, Android ROM. Boot loader loads first and decides the next partition to be loaded which is usually the Android ROM. Recovery is the mode that is used by device to install updates to Android ROM partition. It is also used while factory resetting the phone. The recovery that comes by default usually has less options and that is why custom recovery modules are available.
Fastboot on the other hand is a protocol that can be used to connect to the device from a computer over USB and issue updates to the partitions of the device. For example, while I'm in fastboot I can update by recovery partition.