Is a dense set always infinite?
To answer the general question of "are dense sets always infinite": no, because certainly, if $X$ is a finite topological space, then $X$ is dense in itself.
For another example, if $X$ is any set with the indiscrete topology, then every nonempty subset of $X$ is dense.
For yet another example, let $X = \mathbb{R}$ with the topology determined by the Kuratowski closure operator $$\operatorname{cl}(S) = \begin{cases} S, & 0 \notin S; \\ \mathbb{R}, & 0 \in S.\end{cases}$$ Then $\{ 0 \}$ is dense in $X$, yet $X$ is $T_0$. (In fact, this example can easily be modified to give a $T_0$ topological space of any desired cardinality such that some single point is dense.)
On the other hand, in a $T_1$ topological space, every finite subset is closed. So, if a finite subset of a $T_1$ topological space $X$ is dense, then $X$ itself must be finite. Or, for the contrapositive, if $X$ is an infinite $T_1$ topological space, then every dense subset of $X$ is infinite.
A dense set of the reals is always infinite. It need not be countable: For example, the reals are dense in themselves.
And a dense set needs not be infinite either. For example, $\{1\}$ is a finite set that is dense in itself.
Every dense subset of $\mathbb R$ is infinite. A finite set has a maximum so it clearly cannot be dense. Dense subsets of $\mathbb R$ need not be countable; for example, the irrational numbers and the entire set $\mathbb R$ are both uncountable and dense.