haha I had the same questions when I was learning so here it goes...
Router- Routers connect networks together and is by far the "smartest" of the three. Routers can assign local IPs and forward information to specific addresses. Routers can also analyze where a packet needs to go and the best way to get there. So if one route is backed up and busy, a router can route the packet a different and more effecient way.
Switch- The next one down is a switch. A switch can forward packets of info to a specific port but can't do as much as a router can. Plus switches aren't used to connect networks but rather nodes on a subnetwork. Where you see them most is where a collection of computers are (say on a small office floor). The switch connects these series of computers together (then a router connects the switches together and at times servers as well).
Hub- The hub is the next step down and they aren't really used anymore except in older networks. Hubs simply take in packets and broadcast them to every node on the network.
This can be really ineffecient because more times than not, all nodes on the network don't need to see the info. This also poses a security risk of confidentiality. Like I said hubs aren't really used anymore because of its ineffeciency, they're getting replaced by the more effecient switch.
I hope this helps... if I need to clarify something just let me know. Its kinda hard to explain stuff through text instead of person to person.
gah be me to it jmacavali
Plus you put yours in a more concise way