Yes... If you transfer a unit to another civ, it keeps it's veteran status.However, when you give a unit to a human player in MP, a cheat can occur.
Example...
It's your turn... you want to give a diplo to an ally. You can move the unit, and then give it to your partner. The unit will then be able to move again when it becomes your partners turn, basically allowing the unit to move twice in the same year.
Taking it one step farther... you can move the unit, and give it to your ally. If he gives it right back to you before you end your turn, YOU CAN MOVE IT AGAIN. By repeating this process, you can basically have unlimited movement for a unit.
Also, you can use this to create instant embassies between allies. Just give your ally a diplo that is standing outside of one of your cities. On his turn... instant embassy.
Now, consider doing this with a caravan. Just move a caravan one square outside of one of your cities that demands what it's carrying. Give it to an ally, and at his turn, instant trade route. It will attach itself to his nearest city, so a little advance thought is needed to maximize value.
So when you start a game, discuss this, and see what you are going to allow.
In the group I play with, we don't allow the trading of caravans (diplos are OK) and no unit can be traded with the sole intent of giving it additional movement. Granted, it's the honor system, but I trust the people I usually play with!