Those $3 Wifi modules can be extended to surprisingly good range with the right antenna. From Hackaday:
With progress slowly being made on turning the ESP8266 UART to WiFi module into something great, there is still the question of what the range is for the radio in this tiny IoT wonder. [CNLohr] has some test results for you, and the results are surprisingly good.
Connecting to the WiFi module through a TPLink WR841N router, [CN] as able to ping the module at 479 meters with a huge rubber duck antenna soldered on, or 366 meters with the PCB antenna. Wanting to test out the maximum range, [CN] and his friends dug out a Ubiquiti M2 dish and were able to drive 4.28 kilometers away from the module and still ping it.
Using a dish and a rubber duck antenna is an exercise in excess, though: no one is going to use a dish for an Internet of Things thing, but if you want to carry this experiment to its logical conclusion, there’s no reason to think an ESP8266 won’t connect, so long as you have line of sight and a huge antenna.
There’s still a lot of work to be done on this module. It’s capable of running custom code, and since you can pick this module up for less than $5 USD, it’s an interesting platform for whatever WiFi project you have in mind.