Arduino Board/shield difference?


I'm new to the Arduino environment and don't know what the difference between an Arduino board and a shield is. Can someone please explain, or direct me to where I can find out. Thanks.

An Arduino borad is a board with a processor (called microcontroler) and headers that can be inputs or outputs for this board communicate with the world. With this inputs and outputs you can read sensors or switches (inputs) and you can turn lights ON/OFF or drive a display (outputs).

Normally the shields are boards that can plug in the top of the Arduino board (through the headers that I talk later) and have inputs and/or outputs in it.

Here is an image with the one Arduino board, with an shield in the top of it:

Arduino board has the micro controller and is sufficient to run basic projects or more complex projects if you connect more hardware to it.

A convenient way to connect more hardware to the arduino board is to buy a shield that has the hardware on it. All you need to do is to plug the shield on top of Arduino, instead of using a bunch of jumper wires and a breadboard. The majority of shields you see online are compatible with Arduino UNO, with some also compatible with MEGA and Leonardo. Most of them are not compatible with Arduino DUE because of the different voltages. Arduino DUE operates at 3.3V I/O logic and most shields only operate at 5V. As far as I know, all current version of official Arduino shields are compatible with Arduino UNO, DUE, MEGA, and Leonardo. Many third party shields such as Adafruit's data logging shield, don't have their SPI pins connected to an ICSP header. So they are only able to limp on arduino MEGA or Leonardo.

You buy a shield if you want the convenience of the hardware and supporting software and want to try the hardware out.

Thanks luisilva and liudr for your generous assistance.