There is also landuse=grass.
There is quite some discussion within the community whether that should actually be landcover=grass. The reasoning is that it is not really "use of the land", but rather "the land is covered by". But on the other hand, we should not take the keys of the tags too literally.
The wiki page for [leisure=pitch](https://wiki.openstreetmap.org/wiki/Tag:leisure=pitch) also lists surface as a useful combination.
I use surface typically for line features (e.g highways). I would use both landcover and landuse for grass areas inside a park. Typically there will be other surfaces in the park as well (bushes, trees, sand in playground, fine gravel for paths, etc)
So, in conclusion, I think that when there is already a "main"-tag such as highway or leisure, one can use surface. If you only want to map a grass area, use landuse/landcover.
p.s. only landuse=grass gets rendered on the default style