Wi-Fi remote using ESP8266

I would need advice if what I want to do is possible.

I have windows application written in c# with standalone server and I need to make a remote to send HTTP requests via WiFi to it with arguments. Is it possible to achieve it with ESP8266?

I want to make a small remote with ESP8266 onboard and 4 buttons. If I press any button, could ESP8266 connect to the same network and send HTTP request? And can it handle more buttons than 3? Because I see it only have 3 inputs/outputs so I was wondering if I could connect two buttons to one input, one with resistor and recognize them through voltage.

It is possible, you can also consider using an ESP8266-12 which has 15 GPIO pins.

You won't need an Arduino for this product, so I recommend asking on an ESP8266 forum rather than here.

You could use an I2C port expander to get more I/O. The MCP23008 is 8 bits, MCP23017 has 16. Wire library works on ESP8266. This Adafruit page shows the MCP23008 and has a link to a library for it.

Once you have I2C working it is easy to add other peripherals like a LCD.