A group with finitely many subgroups is finite. Let $G$ be a group with finitely many subgroups. For each $x\in G$ we define $G_x:=\langle x\rangle:=\{x^n:n\in\mathbb{Z}\}$. Is clear that 
$$
G=\bigcup_{x\in G}G_x
$$
Suppose that $|G_x|=\aleph_0$ for some $x\in G$, then we can conclude that $G_x\cong\mathbb{Z}$ and this implies that $G_x$ has infinitely many subgroups in contradiction with the initial hypotesis. Then for any $x\in G$, $G_x$ must be finite. Now, exists $\{x_1,x_2,\dots, x_n\}$ such that 
$$\bigcup_{x\in G} G_x=\bigcup_{1\leq k\leq n}G_{x_k}$$
Because $G$ has only finitely many subgroups, so $G$ is finite.
Is my proof right? 
 A: Your proof is essentially good, but it can be streamlined.
Let $x_1,\dots,x_n\in G$ such that $\langle x_1\rangle,\dots,\langle x_n\rangle$ are all the cyclic subgroups of $G$. Then, since every element of $G$ belongs to a cyclic subgroup, we have
$$
G=\bigcup_{i=1}^n\langle x_i\rangle
$$
Moreover, every cyclic subgroup of $G$ is finite, because if $\langle x\rangle$ is infinite, it has infinitely many (cyclic) subgroups and each such subgroup is also a subgroup of $G$.
Therefore $G$ is finite.
A: I see nothing wrong in it, but it is incomplete. You did not justify that if $G_x\simeq\mathbb Z$, for some $x\in G$, then $G$ has infinitely many subgroups.
A: Here's a shorter proof. If a group has finitely many subgroups it also has finitely many cyclic subgroups, so we have that $\{\langle x \rangle | x \in G \}$ is a finite set. Now if $G$ is infinite there by above assertation one $\langle x \rangle $ is infinite, as $G = \bigcup_{x \in G}\langle x \rangle$
Now it's not hard to see that $\langle x^m \rangle \not = \langle x^n \rangle$ for positive $m\not=n$ and this means we have infinitely many subgroups of $G$, which is wrong.
