Every manifold admits a vector field with only finitely many zeros

Here's a fun proof that employs the Transversality theorem to show that on any smooth manifold $M$, there is a vector field that vanishes only on a $0$-dimensional submanifold of $M$. Of course, when $M$ is compact, every $0$-dimensional submanifold is finite, which gives you your desired result.

Assume without loss of generality that $M^n$ is embedded in $\mathbb{R}^N$ with $N>n$. Define a map $F:X\times \mathbb{R}^N\to TX$ by $F(p,v)=\text{proj}_{T_pM}v$. Then $F$ is a smooth submersion. In particular, $F$ is transverse to $Z=X\times \{0\}$. So, by the transversality theorem, there exists some $v\in \mathbb{R}^N$ so that $f_v(x):X\to TX$ is transverse to $Z$. Now, $f_v(x)$ is a smooth section of $TX$, and so $f_v$ is a vector field. So $f_v^{-1}(X\times \{0\})$-the zeros of $f_v$-is a submanifold of $X$ of codimension $\dim TX-\dim X\times \{0\}= \dim X$, as claimed.


A classic method - I think of Steenrod - is to triangulate the manifold then form the vector field whose singularities are the barycenters of the triangulation.For instance on a triangle the field flows away from the barycenter of the triangle towards the vertices and the centers of the edges. along the edges the field flows away from the centers towards the vertices. Draw a picture. It is easy to see.