The most common type of virus I've seen on USB media makes use of Windows' autorun "feature". Who at Microsoft thought, "hey, it would be a good idea to make Windows run any software it's presented without asking the user"? These viruses (e.g. Conficker) use autorun.inf to tell Windows to run it.
A good way to avoid these viruses is to disable autorun, and to create a write-protected autorun.inf on your USB disks. I couldn't find a good way to do the second, until I came across:
It's free, and it works great! Use it to write protect your autorun.inf.