There are various boards with the ESP8266 chip available. The best sources for the modules are eBay or Aliexpress. Mostly they will get shipped directly from China. If you cannot wait you can get the meanwhile also in Europe or the US bit the price will be significantly higher. The ESP-01 module is more suitable for a breadboard because of the 0.1 in pitch of the pins. The other modules are mostly to be used on SMD boards. There are also adapter board available which do allow the usage of the other boards on a breadboard as well. This website has a good summary. The main difference between the modules is mostly which IO pins are available.
To configure the modules you have to use a serial / USB converter. They are sold very cheap on eBay. I would use one with the FT232RL chip. It will run on Windows, Linux and OSX. There are many different adapters. The one I am using looks like this:
It can also be adjusted to work with 3.3V signal level and can also supply the ESP module with 3.3V. To adjust this use the little jumper.
To connect this module with the ESP-01 board (at eBay less than 2€)
use the following picture:
The CH_PD pin (chip power down) needs to be connected to VCC in order to use the module. GPIO0 needs to be connected to GND in order to flash new firmware onto the chip. After flashing it can still be used as GPIO.
The default firmware on these modules does only allow AT commands like on modems over the serial interface. There are some examples on the net, how you can use this default firmware together with Arduino boards. This is nice if you are looking for a inexpensive way to extend a Arduino based project with a WIFI module. Pay attention to the signal level ! Most Arduinos do use 5V – this will kill the ESP8266.
But if you do not depend on Arduino it is probably better to use the ESP module direct, because there is a project called nodemcu firmware. This is an extension of the default firmware with a built in LUA interpreter. The way this works is very similar to node js (event loop) but with LUA syntax. For those who have not worked with LUA before – it is very similar to C but you don’t have to declare variables. This is under very active development and gets support for more and more sensors and even little OLED displays.