vector space of all smooth functions has infinite dimension
This follows from the existence of bump functions. Take an open set $U$ in your manifold with a chart $\phi:U\to \mathbb{R}^n$. Let $k$ be a positive integer, and let $x_1,x_2,\ldots,x_k$ be distinct points in $\phi(U)$. For each $j$ from $1$ to $k$, let $f_j:\mathbb{R}^n\to\mathbb{R}$ be a smooth function whose support is a compact subset of $\phi(U)$ such that $f_j(x_j)=1$ and $f_j(x_m)=0$ if $m\neq j$. Define $g_j:X\to\mathbb{R}$ by $g_j(x)=0$ if $x$ is in $X\setminus U$, and $g_j(x)=f_j(\phi(x))$ if $x$ is in $U$. Then $\{g_1,\ldots,g_k\}$ is a linearly independent set of smooth functions on $X$. Since $k$ was arbitrary, the space of smooth functions is infinite dimensional.
I originally posted the following as a comment but I think it is a particularly simple argument, so worth upgrading to a answer.
Choose any $\theta\in C^\infty(M)$ which is not constant on a connected component of $M$. Then its image is an infinite subset of $\mathbb{R}$ (it includes a nontrivial interval). As the space $\mathbb{R}[X]$ of real polynomials is infinite dimensional, and a polynomial is fully determined by its values on an infinite set, you can conclude that $$ \left\{f\circ\theta\colon f\in\mathbb{R}[X]\right\} $$ is an infinite dimensional subspace of $C^\infty(M)$.
Note that this argument is applicable much more generally. E.g., if a Riemann surface has at least one non-constant meromorphic function then the space of meromorphic functions is infinite dimensional.
If you like, you can modify this method to show that the dimension of $C^\infty(M)$ is (at least) the cardinality of the continuum, by proving the same is true for smooth functions on any nontrivial interval in $\mathbb{R}$. (Hint: the exponentials $x\mapsto e^{ax}$ are linearly independent).
I'm not sure of the details for smooth manifolds, but certainly the polynomials have infinite dimension and are contained in $C^\infty$.