Transistor
to drive a motor the simplest way is to use a transistor, http://bildr.org/2012/03/rfp30n06le-arduino/ ,of course there are some limitations with this but its a pretty good start.
someone else component
buying someone elses component can really make things a lot easier and they can do a lot more. Spark fun has this, https://www.sparkfun.com/products/9457, check out tutorial, http://bildr.org/2012/04/tb6612fng-arduino/,
Motors that I've used
spark fun 45RPM 1A stall current, https://www.sparkfun.com/products/12514,