Arduino is a great starting point for electronics, and with a motor shield, it can also be a nice tidy platform for robotics and mechatronics. Here is a design for a full-featured motor shield that will be able to power many simple to medium-complexity projects.
Features:
2 connections for 5V 'hobby' servos connected to the Arduino's high-resolution dedicated timer - no jitter!
Up to 4 bi-directional DC motors with individual 8-bit speed selection (so, about 0.5% resolution)
Up to 2 stepper motors (unipolar or bipolar) with single coil, double coil, interleaved or micro-stepping.
4 H-Bridges: L293D chipset provides 0.6A per bridge (1.2A peak) with thermal shutdown protection, 4.5V to12V
Pull down resistors keep motors disabled during power-up
Big terminal block connectors to easily hook up wires (10-22AWG) and power
Arduino reset button brought up top
2-pin terminal block to connect external power, for separate logic/motor supplies
Tested compatible with Mega, Diecimila, & Duemilanove
Dimensions(assembled): 69mm x 53mm x 14.3mm (2.7in x 2.1in x 0.6in)