Generators of the graded ring of modular forms
Indeed, for any congruence subgroup $\Gamma \subset SL_2(\mathbb Z)$, (of any level) the graded ring $M_k(\Gamma)$ is generated in weight at most 6, with relations in weight at most 12. Furthermore, in the case that $M_3(\Gamma) \neq 0,$ i.e., there exists a modular form of odd weight, (see Remark 1.6 of Landesman, Ruhm, and Zhang linked below,) $M_k(\Gamma)$ is generated in weight at most 5, with relations in weight at most 10. In the further case that $M_3(\Gamma) \neq 0$ and the genus of the Riemann surface corresponding to $\Gamma$ is $0$ or $1$, then $M(\Gamma)$ is generated in weight at most 4 with relations in weight at most 8.
A proof follows from combining results of two recent articles, namely Theorem 1.4 (the main result) and Theorem 9.3.1 from Voight and Zureick-Brown http://arxiv.org/abs/1501.04657 and Example 1.7 from an article by myself, Ruhm, and Zhang http://arxiv.org/abs/1507.02643.
To spell out how these results fit together, there are two cases. The case that there exists a nonzero odd weight modular form is covered by Example 1.7 of Landesman, Ruhm, and Zhang. So, it suffices to show that if there is no odd weight modular form, then the ring of modular forms is generated in weight at most 6, with relations in weight at most 12. First, in the case that $g > 0$, this follows immediately from the last sentence of Theorem 1.4 of Voight and Zureick-Brown because $2g -2 \geq 0$ and congruence subgroups can only have elliptic points of orders 2 and 3, and so $3 = \max(3,e)$. Second, if $g = 0$, note that because $\Gamma$ is a congruence subgroup it has some cusp, so $\delta \geq 1$ (where $\delta$ is the number of cusps). Since all the exceptional signatures listed in the table in the statement of Theorem 9.3.1 have $\delta = 0,$ they do not occur for congruence subgroups. Therefore, by the last sentence of Theorem 9.3.1, such congruence subgroups are generated in weight at most $2e = 6$ with relations in weight at most $2 \cdot 2 e = 12$.
One final note: in Voight and Zureick-Brown, it says the ring is generated in degree $e$, but degree $e$ is the same as weight $2e$ by their grading convention.
Edit: The above statements hold over any perfect field (or more generally when the stacky curve associated to $\Gamma$, as discussed in Voight and Zureick-Brown Chapter 5, is tame and separably rooted). However, as pointed out by John Voight in the comments, generation in weight 6 and relations in weight 12 still holds over more general base rings. See Voight and Zureick-Brown Proposition 11.3.1 for more.
Edit: The above answer is now fully explained in Example 1.7 of Landesman, Ruhm, and Zhang, referenced above.
In the special case of the principal congruence subgroup $\Gamma=\Gamma(N)$ with $N \geq 3$, Khuri-Makdisi has proved that the graded algebra of modular forms on $\Gamma$ is generated by the modular forms of weight 1. In fact, the algebra generated by the Eisenstein series of weight 1 contains all modular forms in weight $\geq 2$, so misses only the cusp forms of weight 1. This is proved in his article Moduli interpretation of Eisenstein series.
In the case $N=2$, then $M_*(\Gamma(2))$ is freely generated by the weight 2 Eisenstein series $e_1,e_2$ obtained by putting the universal elliptic curve in the form $y^2=(x-e_1)(x-e_2)(x-e_3)$.