The intuition behind this theorem is the following: If a set is countable, then any "smaller" set should also be countable, so a subset of a countable set should be countable as well. To provide a proof, we can argue in the following way.
Let $A$ be a countable set and $B \subset A .$ If $A$ is a finite set, then $|B| \leq|A|<\infty$, thus $B$ is countable. If $A$ is countably infinite, then we can list the elements in $A$, then by removing the elements in the list that are not in $B$, we can obtain a list for $B$, thus $B$ is countable.
The second part of the theorem can be proved using the first part. Assume $B$ is uncountable. If $B \subset A$ and $A$ is countable, by the first part of the theorem $B$ is also a countable set which is a contradiction.