To explain why the ACA was needed you first need to understand some history and facts on the ground.

Pre 1947, India was all of modern day India, Pakistan, Bangladesh and parts of Afghanistan. When the country was partitioned, it was partitioned into Pakistan (modern day Pakistan and Bangladesh) which was set up as an explicitly Muslim nation with a state religion and an explicitly secular India which welcomed all religions. There was a massive migration of people which was extremely violent. It would not be exaggeration to call it a holocaust. Neighbors joined mobs and killed neighbors of the wrong religion, entire trains were burned. There was plenty of violence on both sides of the new border. As this violence was stopped, Gandhi, Nehru and Jinnah made an appeal to people to stop leaving because the more people that left and hence abandoned businesses and jobs, the more the economy was hurt. As part of this appeal a promise was made that any Muslim who wanted to migrate to Pakistan at a later date would be permitted to do so and be treated as if he or she had migrated at that time and any non-Muslim who wanted to migrate to India would be treated the same in India. The promise was further voted on and approved by a precursor to the constituent assembly of India which setup the constitution.

As it turns out, at the end of the day, virtually all non-Muslims who lived in modern Pakistan left for India. Lahore, a city in modern Pakistan was 50% Hindu, 20% Sikh in 1945. Today it's 99% Muslim. In contrast more Muslims live in India today than in Pakistan. What this means in practice is that the non-Muslims who chose to remain in Pakistan were the ones who were relatively wealthy and/or powerful and often individuals with large businesses who decided not to leave due to a combination of wanting to protect their assets and a reliance on the promises made in case things change. As the years went on, many of these individuals wanted to get the hell out of Pakistan so they liquidated their property and came to India, often with large amounts of liquid assets. Now, if you are an enterprising, corrupt immigration official, they were great targets and they would often end up having to pay material percentages of their assets as bribes. These individuals have a further problem. Unlike Muslim refugees from Pakistan, when they left Pakistan, their Pakistani citizenship would be revoked so they were stateless and desperate. The ACA was primarily designed to solve this problem.

India has taken in and continues to take in plenty of Muslim refugees, far more than the US or the EU takes in. There is a recognition that the Muslims who migrated to Pakistan from India are to this date discriminated against in Pakistan as Mojahirs, entire sects of Islam like the Ahmadis, who choose not to ascribe to the harsh interpretation of Islam are classified as non-Muslim and then have to deal with frankly ridiculous treatment. However, when these refugees come to India, they are typically destitute. So there is no incentive to bother them to try and get them to cough up bribes. As a result there was no problem to solve.

Could something different have been done? Sure. But legislatures are sausage factories. The government needed to ensure that it had the votes for legislation that made it easier to immigrate from a country which has sent terrorists to India and taken over a major city and killed hundreds of people there and attacked parliament. And this legislation solved the actual problem and got passed. You can't let the perfect, particularly when the so called perfection is mostly cosmetic, be the enemy of the good.

Again, any refugee from anywhere in the world, of any religion can seek asylum in India. It's fairly straightforward to be allowed to live and work in India, far easier than anywhere in the West, no matter your religion or background. Refugees can get Indian citizenship by following a series of steps, typically in 12-14 years. The ACA does not change any of this. The ACA simply gives affect to the promise made in 1947 which was also voted on by the constituent assembly and is hence binding on Parliament that non Muslims who did not emigrate at that time from certain areas would be treated as if they had emigrated at that time if they emigrated at a later date. It creates a process by which these individuals, who still have to go through the same security checks etc as any other refugee from Pakistan can get citizenship in 5 years. Rather than getting permanent residence in 5 years, while still being stateless, they are granted Indian citizenship.