Everyone wants to do some social activities to make their life more enjoyable. The environment of the village is pleasant and silent and it has scenic beauty. Most of the villages in India are very remote with some being literally inaccessible due to their locations on high altitudes.
In the city, however, there are many great restaurants within a close range,so you can eat a a different one every time.
A big company can pay more salary to its employees.
There also recreational facilities, such as museums, parks and zoos, where people go to relax and enjoy. It is also where more people, proportionally, rise out of poverty compared to rural areas, which is exactly why Chinese gravitate toward their cities and away from the countryside.
Furthermore, a lot of things that cannot may in the village. In the country you need to drive a long way to get wherever you want to go so you burn a lot of fuel and pollute the air, but in the city, you can just take the bus or subway, doing the environment a huge favor.
There are no advanced police forces in the villages, just a few sheriffs with poor equipment, who have to cater to all the people. So the pollution is less.
They have to go to the city for supply their needs. It can also be very hard to fit in in the country if you are a minority, because there is more racial prejudice and the country folk who are supposed to be SO friendly will not respect someone who is a different race or sexuality than them, but in the city, we welcome everyone and so our culture blooms, far surpassing that of the country.
The development in urban areas allows for more job opportunities and everyone gets paid for whatever effort they put in.
They may want to go to cinema with their family or they could want to drink something with their friends in a cafe or a bar.