Serial.available() vs. Serial.print()

The Xbees I use are the 802.15.4

I missed that you were using XBees in the first post. All XBees transmit using the 802.15.4 protocol. There are series 1 and series 2.5 XBees that are used for different purposes. Which do you have?

It doesn't really matter if direction connection does not solve the problem.

Rereading what you want to do, I think I see the problem. You are trying to have the XBees AND the PC communicate with the Arduino using the hardware serial port. It looks like you want to send data to the serial port, from the Arduino, and have the serial port know whether to send the message to the XBee or the PC. That won't work. The serial port is a dumb device. Both the XBee and the PC can be connected to the serial port, and both will see the same incoming and outgoing data.

However, it really looks like you should be using the hardware serial port to talk to the PC and NewSoftSerial to talk to the XBee on another pair of pins. If you are using a shield (probably not with a homemade PCB), that could prove difficult.