Consider a set $A.$
It is-
1. Finite : Either it is empty or if there exist a bijective function $f :$ {$0,1,2...n-1$}$\rightarrow A$ where {$0,1,2...n-1$} is subset of $\mathbb{N}$.
Suppose $A$ = {$a_1,a_2,a_3,a_4...a_n$}
We can find a mapping(not necessarily this one) like $f(A)=${$(a_1,0),(a_2,1)...., (a_n,n-1)$}. It's bijective so A is finite.
2. Infinite - if there exists an injective but not surjective function $ f: A \rightarrow A$ i.e range of f is a proper subset of set A.
Ex. - $A=$ {$1,2,3,4....$} and let A= x+1 where $x \epsilon A$ . It's one to one but not onto(no pre-image for 1 ) so A is infinite.
3.Countable (Either finite or infinite) - if there exists an injective function $ f: A \rightarrow \mathbb{N} $ where $\mathbb{N}$. is set of natural number.
Note that condition for one to one function is $|A| \leq |B|$ .Above function ensures that |A| $\leq|\mathbb{N}|$.
Or equivalently we can say that a set is countable if exists a surjective function $f :\mathbb{N} \rightarrow A$ which ensures that set of natural numbers cover this set A entirely.
4. Countably infinite - if there exists a bijective function $ f: A \rightarrow \mathbb{N}$. It shows $|A| = |\mathbb{N}|$. So set A will be countably infinite.
5 . Uncountable- if there doesn't exist an injective function $ f: A \rightarrow \mathbb{N}$ .
or equivalently we can say that a set is uncountable if there doesn't exist a surjective function $f :\mathbb{N} \rightarrow A$ .