I've been following this for a while now. This theory has been gaining more and more ground with archaeologists, anthropologists and linguists over the past few years.
The area around the Indus River Valley experienced a drying out. The "mythical" Saraswati River is not so mythical. Satellite images show what appear to be its dried up course. In fact, in Old Persian we have the name of a river referred to as Hairovati (there is a regular sound shift between Old Persian and Vedic Sanskrit. Sanskrit 's' becomes Old Persian 'h'... Sindhu->Hindu; sapta->hapta; Saraswati->Hairovati; asura->ahura (the meaning also flipped); and many more).
The Indus Valley Civilization inhabitants probably moved eastwards towards the Ganges Plains where it was more fertile and wet, thereby abandoning what we know as the IVC (and no it was not an atomic blast from Ancient Aliens
).
There is no DNA evidence to show that there has been any kind of mass migration into or out of India for at least 50,000 years, if not even up to 100,000 years. Small migrations and cultural exchanges may have taken place, accounting for the linguistic relationships between the Indoeuropean languages (including Proto-Indoiranian which includes Old Persian and Vedic Sanskrit). And from a linuistic p.o.v. my guess is that the language of the IVC was... drumroll please... Proto-Sanskrit. But I doubt there was any mass migration or invasion into India from outside (the north), except for when humans left Africa 200,000 years ago.
When humans left Africa, there were several routes they took. Remember that the Sahara was not a desert up to 10,000 years ago. It was a wet marshland with lakes. The same can be said for the Arabian peninsula and most of south and southwest Asia. Humans took the "southern route" into south Asia, to southeast Asia and on to Australasia (land bridges) by 40,000 years ago. Some humans went north and east to the Asian steppes, and some north and west into Europe. By about 10,000 years ago the Sahara and southwest Asia became desertified. It was probably another few thousand years before the northwest of the Indian subcontinent dried.
So what this says if my theory is correct, is that if the Indian subcontinent and most of south Asia was inhabited for the past 50,000 to 100,000 years, that was more than sufficient time for advanced civilizations to arise. In a nutshell, Indians have been indigenous to India for at least 50,000 years.
However, I don't buy into the Out of India theory either: the linguistics and genetics don't bear it out or support it.