NEW DELHI — Prime Minister Narendra Modi of India delivered on Sunday a strident defense of a contentious citizenship law that has fueled deadly protests, accusing opposition politicians of “spreading lies” and demonstrators of trying to destroy the country through vandalism and bloodshed.

During an often combative speech in New Delhi, Mr. Modi signaled that he would not scrap the law, which favors every major South Asian faith other than Islam.

Critics argue that the law is glaring evidence that the government plans to turn India into a Hindu-centric state and marginalize the country’s 200 million minority Muslims. Mr. Modi, in his speech, dismissed the notion that the law was discriminatory.

“Respect the Parliament!” Mr. Modi said to thousands of supporters. “Respect the Constitution! Respect the people elected by the people! I challenge the ones who are spreading lies. If there is a smell of discrimination in anything I have done, then put me in front of the country.”