From Wikipedia:
Trojan horse, or Trojan, is any malicious computer program which is used to hack into a computer by misleading users of its true intent. The term is derived from the Ancient Greek story of the wooden horse that was used to help Greek troops invade the city of Troy by stealth.
Therefore the difference is that a trojan horse is supposedly an useful program, or a game, or anything else that the user would like to run; however, when it is run, it also executes harmful code such as stealing the user's CC number or implanting a rootkit for remote control of the victim's computer.
Viruses and worms, on the other hand, cannot exist by themselves; they live and replicate by attaching themselves to files (in the case of viruses) or using network communication protocols (worms).