Forget about all those boring tech spec, they just confused you more. I don't really believe there is such need to have two concepts, because in programming language they can be referred interchangeably, like we say vehicles and cars. Many articles on Angular2 don't refer to them distinguishably for general discussion until actual coding.
However here are the two key differences when looking at code:
- Component has class, template and metadata.
- Component is child of Module, meaning Module is always at a higher level of Component.
About No. 2, that said means Component is the leaf-level in the Angular2 structure. Here is a very good explanation.