From http://www.arduino.cc/en/Tutorial/X10
This library enables you to send and receive X10 commands from an Arduino module. X10 is a synchronous serial protocol that travels over AC power lines, sending a bit every time the AC power crosses zero volts. It’s used in home automation. You can find X10 controllers and devices at http://www.x10.com, http://www.smarthome.com, and more.
This library has been tested using the PL513 one-way X10 controller, and the TW523 two-way X10 controller. Both of these are essentially X10 modems, converting the 5V output of the Arduino into AC signals on the zero crossing.
To connect an Arduino to one of these modules, get a phone cable with an RJ-11 connector, and cut one end off. Then wire the pins as follows:
Read more at http://www.arduino.cc/en/Tutorial/X10