Years ago, I specifically went with zigbee because it's low-power and a simpler protocol stack (and open). No need to even think if the device will run offline or what kind of API it will use. I'm running HA and all the hardware I needed was a USB zigbee dongle and that's it. You pair your sensors, outlets etc. to it using a GUI and by pressing a physical button. No need to coordinate anything yourself, the mesh network can take care of itself.