The first is a statement of possession, the second is a statement of existence.
In the case of a city there is not so much difference. The meaning is a little odd (are there any cities that don't have any parks at all?) but I assert that "This city has many parks" and "There are many parks in this city" are equivalent.
On the other hand, sometimes there is a big difference between possession and existence. For example you might say "There are many dogs in the park" but since the dogs don't belong to the park it would be odd to say "The park has many dogs". On the other hand, when the subject is a person, it is more normal to use "have": "I have a sister" instead of "There is a sister in my family"