Yes, ESP8266 is the cheapest (but not necessarily the easiest - yet) way to connect sensors to the internet via WiFi. There is a strong community working on improving a SDK for access to the micro on the ESP8266. But note WiFi is a strong draw on the battery of the sensor and range isn't as good as other radio solutions (as WiFi optimizes for speed which isn't relevant for sensors) but with the ubiquity of WiFi these limitations aren't showstoppers.
For MQTT with local automation support, there are libraries available that you can use to integrate MQTT into your local HA hub if you are a developer. I use a node.js library from github and as my hub software is message based using topics very similar to the MQTT format it was easy to add MQTT as another protocol the hub supports. Another alternative is to add MQTT support on your hub via a MQTT gateway to act as a bridge between the MQTT sensor and a MQTT broker which would be better if it is difficult to implement MQTT broker functionality into your hub (but would require a MQTT broker like Mosquito to switch messages).
For MQTT with local automation support, there are libraries available that you can use to integrate MQTT into your local HA hub if you are a developer. I use a node.js library from github and as my hub software is message based using topics very similar to the MQTT format it was easy to add MQTT as another protocol the hub supports. Another alternative is to add MQTT support on your hub via a MQTT gateway to act as a bridge between the MQTT sensor and a MQTT broker which would be better if it is difficult to implement MQTT broker functionality into your hub (but would require a MQTT broker like Mosquito to switch messages).