Shortcodes are useful when you want to be able add more complex elements inline into the normal content editor.
A shortcode in it's simplest for would look like this:
function my_shortcode( ){
return "This is a shortcode";
}
add_shortcode( 'my_shortcode', 'my_shortcode' );
It would output the text "This is a shortcode"
and you would use it by writing [my_shortcode] in the content editor.