ADB sideload and fastboot uses. What's the difference? 1) If i want to flash a stock rom what should I use adb sideload or fastboot. I have seen on youtube people using both of these. Are both of these similar or different. Sorry if this sounds stupid but I'm a noob and I'm very confused.

2) Do i have to unlock bootloader for flashing stock rom.

3) Does fastboot oem lock/unlock command works on every android device.
Folks consider adb sideload &lt;ZIP&gt; when they have a ready to flash .zip file. The command is mostly used when booted into Recovery mode.
Fastboot on the other hand often deals with per partition flashing at a time. E.g. fastboot flash  recovery &lt;IMG&gt; -- only flashes Recovery partition and not all the relevant partitions for ROM installation. ADB sideload &lt;ZIP&gt; usually does full ROM installation in one go.

You unlock the bootloader only if it is locked. Google Nexus devices comes with locked bootloaders while some Chinese Mediatek devices comes unlocked. You've to search web for your model.

No, the command doesn't work on every Android device. The reason is 2.