For good noise immunity I would suggest RS-485 for any distance. I use a protocol which is loosely based on Modbus RTU.