Other than needing to wrap a group of internal CSS definitions in a wrapper, there is no difference between internal and external CSS.
There is no specific order to listing the CSS definitions, but the general order I see the most is links, body, header levels, divs, tables, ..... But you need to remember one of the key words from CSS, "Cascading". You can create a general style for a HTML entity, and then cascade it into other styles. This allows you to change the style of a HTML tag, like
, based on the HTML structure that it might be used in and the class settings. But if you put them in the wrong order, they won't do what you expect them to do.
As strange a this may sound, a good example of "cascading" is the "style.css" that is generated from a Website Wizard web site.