I'm looking into buying two XBee's (http://www.adafruit.com/index.php?main_page=product_info&products_id=128) to make two arduino's talk, and wanted to know if I have to buy a FTDI cable and put them on the same PAN ID. Is this more of a best practice thing? Will they communicate without doing this?

The PAN ID is configured using the AT commands you send through the serial port. Take a look at the Xbee init function in the code example at http://wiblocks.luciani.org/docs/app-notes/zb1-lcd2-txrx.html

(* jcl *)

www: http://www.wiblocks.com twitter: http://twitter.com/wiblocks blog: http://luciani.org

Will they communicate without doing this?

If the XBees are not using the same PAN iD, they will not communicate.

They all are pre-set to the same PAN ID, so it is not necessary to change the PAN ID to get them to communicate.

It is necessary to configure them in other ways, though. You will need some way of doing this. The Arduino (minus the chip) and a XBee shield can be used.