Content Types are like reusable data types. Rather than add Site Columns to each List and Library by hand, and either risk missing some out or adding the wrong ones, instead try creating a Content Type.
To create a Content Type, you first need to select one as its parent. All Content Types, other than “System”, have to inherit from a parent Content Type. For List item content, make sure your Content Type inherits from “Item” or a child of “Item”. For Library and file content, it’s the “Document” Content Type you need to choose instead.
It’s worth drawing out a tree of your Content Type inheritance before you make too many of these. You can’t change the parent a Content Type after you’ve created it. Try and get these right first time.
If I forget to add a Site Column, or later on, it becomes necessary to add a new one, I can add a new Site Column to the first parent in the tree that needs the new column. I can then update and push those changes down through the Content Type hierarchy. The changes then also get made to the Lists and Libraries that use my Content Type and any inheriting children.
Content Types are then added to the New menu for Lists and Libraries to make it easy to create your items of the right type.