Garbage characters at start of serial monitor

PeterH:
Then I suggest that the Arduino should use that serial port only to talk to the XBee, and should not be printing debug messages on it. (What do you suppose your XBee will be making of those debug messages?)

You're probably right. In practice, everything seems to run very well. Probably because I'm either writing to the serial monitor or getting data from xbee, I'm not doing both at the same time. I read on sparkfun's site that the xbee shield supports communication on digital pins 2 & 3, so I'm going to look into doing that.