These four phrases, “many”, “much”, “a lot of”, and “lots of”, all express a similar idea of a large amount of something, but they are not completely interchangeable.
The first important difference is that “many” can be used only with countable nouns in the plural (e.g. “many trees”, “many houses”, “many people”), and “much” can only be used with uncountable (mass) nouns in the singular (e.g. “much water”, “much wood”, “much happiness”), for example:
There is no such distinction for “a lot of” and “lots of”, which can be used with both, i.e. both “a lot of/lots of people” and “a lot of/lots of water” are correct. However, notice that when “a lot of” is used with a plural noun, the verb is in the plural too, even though “a lot” itself is in the singular (you can find a more detailed explanation of this phenomenon here):
In a similar fashion, “lots of” with a singular noun is used with a singular verb:
The difference between “much/many”, “a lot of”, and “lots of”
The most important difference between “many”/“much” and “a lot of”/“lots of” is that the latter can’t be used when asking about an amount (“how much”, “how many”) or, usually, when used within a phrase (e.g. “too many, “as much as”, “so many”):
Note, however, that “a lot more”, “a lot fewer”, and “a lot less” are completely acceptable in informal communication.
In virtually all other situations, “many”/“much”, “a lot of” and “lots of” mean essentially the same, but there is an important difference in register. “Many” and “much” sound quite formal, “a lot of” is informal, and “lots of” is even less formal:
There are a lot of people at the party. (informal)
There are lots of people at the party. (even more informal)
“Many” and “much” in affirmative (positive) sentences (like the one above) sound so formal you will almost never hear these in a normal conversation; you should only use them in writing and in very formal speech.
In negative sentences, however, “many” and “much” sound quite natural even in normal speech; there is nothing wrong with saying, for example:
I don’t have a lot of money. (fine in an informal context)
I don’t have lots of money. (even more informal)