The following Claim is used in the proof of Theorem 3.5 in John Milnor's "Morse Theory":
Claim: Let $f: M \rightarrow \mathbb{R}$ be a differentiable function on a manifold $M$ with no degenerate critical points and such that for every $a \in \mathbb{R}$ the set $M^a=f^{-1}((-\infty, a])$ is compact. Let $c_1 < c_2 < c_3 <\ldots$ be the critical values of $f$. Then the sequence $(c_k)_{k \in \mathbb{N}}$ has no cluster point, i.e. $$\forall x \in \mathbb{R} \hspace{2mm} \exists \textit{ a neighbourhood } U \textit{ s.t. } U\cap \{c_k\}_{k \in \mathbb{N}} \textit{ is finite.}$$
The author of the book doesn't really explain why this holds, he only says that it immediately follows from the compactness of each set $M^a$. This leads me to thinking that the proof of this claim shouldn't be that difficult, however I was unable to do it.
My main approach was to prove it by contradiction. I.e. I assumed that the sequence has a cluster point $x \in \mathbb{R}$ and then for any $\epsilon > 0$ I tried to find an open cover of $M^{x+\epsilon}$ which has no finite subcover (which would contradict the compactness of $M^{x+\epsilon}$), but this didn't work.
I would greatly appreciate any help in proving the claim!
Corollary 2.3 claims that non-degenerate critical points are isolated, so if $\{c_i\}$ has a cluster point $y,$ we shall find critical points $x_i\in f^{-1}(c_i)$ such that $\{x_i\}$ clusters around another critical point $x\in f^{-1}(y)$ by compactness of $M^{x + \epsilon}$ and smoothness of $f,$ which leads to contradiction.