The ESP32 also provides BLE, so it would be an option. And you have to consider the overall system, not just the power consumption of the chosen comms method.
I'm using deep sleep and hibernate modes on my ESP8266/ESP32 modules, waking up either at timed intervals or on an external input. The current is just a few microamps apart from a very short time when connecting to the server, so ideal for battery or solar+LiPo operation. The overall simplicity of WiFi, MQTT and Node-RED makes it easier for me to develop the hardware and software, which is a big consideration.
Of course there are lots of other options out there, so it's a case of looking at the pros, cons and costs to choose what's best in each circumstance.