During my first attempt at home automation, I used to mess around with flashing custom firmware onto WiFi devices (Tasmota, ESPHome.) It was a huge pain whenever the hacking process stopped working (tuya-convert), and I had to open up the device, solder some wires, and flash the chip via USB serial.
Nowadays I can just buy any Zigbee product I want (usually from AliExpress), and get it set up in zigbee2mqtt without any extra steps. And it's all local within my home, and no hubs or cloud services required.
I think Zigbee is better for me because I have a lot of battery-powered devices, such as sensors for motion, door contacts, and temperature/humidity. I'm really impressed that the button batteries usually last for 1-2 years.