Beginner questions

First of all, suppose I want to add servo's and DC motors, why would I need a motor control shield/board? Can't I connect the servo's to the arduino board directly?
If for example we write code for the motor control, will it be stored on the motor shield or the arduino board?

Well what is required for servos and direct motor control are two different things. Servos have motor controllers inside them already so the Arduino only has to supply the control signal and +5vdc power to the servo. By the way powering a servo's +5vdc power conductor directly from a Arduino board is not optimum configuration. An Arduino board has limited regulated +5vdc current capacity and can power only about one servo at best. Depending on the size of the servos, and how many you wish to control one, should plan on using an external regulated +5vdc power supply or batteries. I usually plan on one amp of current capacity per servo.

Simple DC motors can not be driven directly from an Arduino output pin as there is a pin current limit recommendation of 30ma or less. An external DC motor controller allows the external drive capacity of the motor. One has to size the motor controller to the motor's voltage and current ratings.

Good luck with your Arduino projects, it's a great way to learn electronics design and constrution.

Lefty