Protestors shout slogans as they walk past a lane near the historic Red Fort in New Delhi, India, Thursday, Dec. 19, 2019. Police detained several hundred protestors in some of India's biggest cities Thursday as they defied a ban on assembly that authorities imposed to stem widespread demonstrations against a new citizenship law that opponents say threatens India's secular democracy. File photo: AP Photo/Altaf Qadri.

New Delhi - Indian police detained thousands of people in various locations across the country on Thursday after they defied a ban to protest against a new citizenship law.

The protests took place in more than a dozen cities including New Delhi, Mumbai, Chennai, Hyderabad and Kolkata. Most were peaceful, but violence broke out in some places.

The controversial Citizenship Amendment Act approved last week makes it easier for non-Muslim illegal migrants from three Muslim-majority countries - Bangladesh, Pakistan and Afghanistan - to acquire Indian citizenship if they are facing religious persecution.

Critics say it goes against India's secular constitution by making religion a basis for granting citizenship.

The ruling Hindu nationalist Bharatiya Janata Party (BJP) says it will not affect any citizen of India - including Muslims - but is only aimed at giving relief to those who have fled religious persecution in the three Muslim-majority countries.

The citizenship law has seen a spate of violent protests in the country over the past week, including in the north-eastern states  bordering Bangladesh where ethnic tribal communities fear an influx of migrants across their borders with Bangladesh.

On Thursday, stone-throwing protesters clashed with police and set fire to vehicles in the Uttar Pradesh state capital of Lucknow, where orders prohibiting gatherings of more than five people are in place.

At least one person died during the violent protests in Lucknow as police struggled to disperse protesters. Three were injured.

Clashes were also reported from the Gujarat capital Ahmedabad, and the city of Mangalore in Karnataka, where curfews were imposed and police used force to disperse protesters.

Elsewhere the protests - largely attended by students, civil society groups and opposition parties - were largely peaceful with thousands of people detained and removed in buses by police.

Bans on large gatherings have been in place in most of the aforementioned cities since early morning.

In Bangalore, protesters who gathered despite the ban were detained including eminent historian Ramchandra Guha, a critic of the government of Indian Prime Minister Narendra Modi.

"I am protesting in a non-violent way. Why are we being stopped?" Guha was seen saying on NDTV news channel as police dragged him away.

In the capital more than 1,000 protesters gathering to join a march near the Red Fort were detained, NDTV news channel reported. Most of them were transported away from the area in buses and released.

A large group, mostly students, gathered at Jantar Mantar in the heart of New Delhi. They shouted slogans and offered roses to police to show they were protesting peacefully.

At least 18 metro stations in New Delhi remained closed until late evening.

Police set up barricades at the outer borders of New Delhi and were screening passengers, which led to massive traffic jams. Many people missed flights and two dozen depaartures from New Delhi were cancelled.

Access to data services and the internet were restricted in the New Delhi area in compliance with a government order.

In Mumbai, celebrities and actors from the Bollywood film industry joined hundreds of protesters at the sprawling Azad Maidan grounds.

"Hindu, Muslim, Sikh, Isahi (Christian) - we are all brothers," said one poster. "Stop dividing India on religious lines," said another.