If $G$ is polycyclic, then every subgroup is finitely generated. In fact, one of several ways to define a polycyclic group is to demand that it is a solvable group for which all subgroups are finitely generated. So, this might seem kind of tautological, but polycyclic groups have other definitions and they come up quite a bit in various areas. This is a special case of the class of Noetherian groups, also known as slender groups, in which are defined by having the property that every subgroup is finitely generated. You can find some more information on this subject in [this MO question](http://mathoverflow.net/questions/26059/example-of-noetherian-group-every-subgroup-is-finitely-generated-that-is-not-fi).