Under the USSR, Russian became the official language of central Asia and eastern Europe, the Chinese emperor made Mandarin the official language, why didn't either Hindi or English become the dominant language in India?
Hindi is not a majority language of India. Only about a third of Indians speak it, and in a more or less concentrated area known as "the Hindi belt" across central India. It may be the language with a plurality in India, but there are vast political considerations predating the formation of the Republic of India. Basically, the Indian far-right movement known as Hindutva believes in three things: an India that is Hindu, Hindi, and Hindustan. I.e. an India that is purely Hindu in ideology (just as Pakistan is not a secular republic but an "Islamic Republic"), that is Hindi in language (which they consider a direct descendant of Sanskrit, the sacred language of the Vedas, the most holy of Hindu scriptures), and is Hindustan (i.e. the sacred land of Hindu religion). Hindutva literature tends to demonize Muslims since they do not consider India a "Holy Land." For Muslims, the Holy Land is Mecca. But to Hindus, all of their holy sites are on the subcontinent. A true Hindu sees India as bother "Fatherland" and "Holy Land." I.e. he is born from the land, and it is sacred ground to him.
As you can imagine, this is a pretty extreme viewpoint to many many Indians. And has been for a long time and for a variety of reasons. Nehru, India's first President, was socialist in ideology and had in mind an India that was industrialized, while Gandhi (Nehru's confidant) knew his scripture (Hindu, Muslim, and Christian) backwards and forwards, and promoted cooperation and peace between Indian Hindus and Muslims. Ambedkar was a Dalit who converted to Buddhism and promoted a sort of secular-Buddhism and a social revolution among the Indian underclass of which he was a part (despite his high education, he couldn't escape his Varna, er, avarnic status). And just leaving the secular and nonsecular Indian "left" if we're to juxtapose it with the nationalist, and sometimes fascist Hindutva-leaning Indian right, there are many many other movements in India including the militaristic Maoist Naxalites, along with all of the regional movements in south India to whom Hindi is as foreign a language as Spanish or German, and the notion of northern Indo-Aryan speakers forcing their language on them is as abhorrent as any other invader doing so.
English faces the same problems. While most Indians have some level of English education, even if it's just knowing the ABCs. English proficiency in India isn't quite at the level that making it an official language would make any sense. If farmers in Tamil Nadu can't understand government forms in Hindi or English, what's the point? (And keep in mind this is a country where literacy has always been tenuous at best.) The early Indian Republic was herding cats at best, and for a lot of nations escaping the bonds of colonialism, language identification has always been a mark of pride. Some countries (Bhutan, for example) were fine with instituting a foreign language as one which everyone should speak (in Bhutan's case, English and Dzongkha serve as co-official languages) to foster intra-Bhutanese communication. But Bhutan instituted those changes while still an absolute monarchy, and faced some serious ramifications as a result anyway. India is much much larger and the ethnic and religious conflicts are magnitudes worse. When India was partitioned, over 500,000 people were killed in two weeks of multi-sided sectarian violence in the Punjab (just for scale, it took three Fascist armies to do the same level of damage with all the weapons of modernity to the US Army in World War II).
Forcing the issue over India's national identity and social destiny something as simple and relatively unimportant as an official language just hasn't been worth it.
Sources:
India: A History by John Keay
Hindutva by Savarkar
Freedom at Midnight by Collins and LaPierre
EDIT: u/Kwizt has brought up significant criticisms of my post here. We've discussed a bit of it over PM. I'm a Tibetologist who dabbles in Indian History and threw in my 2c. I still think everything, based on my understanding of modern Indian History applies, but I'm probably suffering from a bit of source envy. I think Sarvakar's principles, outlines in u/Kwizt's post, are the ancestor of Hindi promoters in India, but again, I think I'm a bit tangled in this response, though I think it still applies rather generally.
the Chinese emperor made Mandarin the official language
... where "the Chinese emperor" was a committee the Republican government. At the time (1932), only a minority in the country understood the language, and only about half of speakers of Mandarin languages could understand that particular Mandarin language.
As to why it is much more widely understood now (over 90%), this can be summarised in one word: schools. Mass education, with centrally-imposed standards. If the official national language isn't taught in schools to the majority of the population, how will the majority of people in areas where it isn't widely spoken learn it?
Imperial China (early Ming) did adopt Beijing Mandarin as its language of administration, and those aspiring to government positions learned it. However, without mass education in government-run schools, 600 years later, Beijing Mandarin was still a minority language. With schools, it became widely understood in less than 1/10 of that time.
Under the USSR, Russian became the official language of central Asia and eastern Europe
The use of Russian in Central Asia shouldn't be over-estimated. None of the Central Asian former Soviet republics have a majority of Russian speakers now, and some (including some that have retained Russian as an official language) have under 10%. While Russian was/is an official language, and was used in administration, it held a position similar to that of English in India. Hindi is more widely understood in India than Russian is in former-Soviet Central Asia.
Given the enormous impact of mass education for the young on the spread of Beijing Mandarin in China, the answer to why Hindi and English fared differently in India (and Russian in Central Asia) is likely to lie in the school systems. u/JimeDorje discussed many political issues concerning Hindi - schools and mass education can coexist with lack of education in national languages. With language education is schools decided by states rather than by the Union (i.e., federal) government, states that don't want Hindi to be the sole official language (and they're largely why English was retained as an official language) won't teach it, and Hindi won't achieve the spread that Beijing Mandarin has in China until that changes.
I can't answer your India question but I want to challenge part of your question in assuming that China is currently (or ever was) a monolingual country.
Written Chinese (which, depending on when we are talking about, was also the form used in Korea, Japan, and Vietnam) is standardizedish. It is, however, not the same as Modern Standard Mandarin nor was it the same as the language which would have been used at court during any of the imperial dynasties
Without getting into unacceptable-for-here anecdotes, a lack of quotable sources, or breaking the twenty year rule, 说普通话写规范字 Speak Putonghua ("the common language" aka MSM) Write Standard Characters is an ongoing campaign. I've got photos of 30 year old propaganda posters for that but I've also got photos of 6 month old painted wall slogans.
To try to veer a little more into acceptable-for-here territory, Charlie Soong (father of a clan of impressive children including Madam Chiang Kai-shek) went from his native Hainan to Singapore, to the US, became a Christian, went to some very impressive schools, and then came back to China to work as a missionary in Shanghai. And failed. Miserably. Because, among other things, at the time the only language he could speak fluently which was understood in Shanghai was English.
Hainan in particular is a veritable clusterfuck of languages and the common tongue on Hainan (what a person from Sanya would use to speak to someone from Baoting prior to 1950 or then abouts) is Hainanhua. Wenchanghua, Haikouhua, Dinganhua are all basically Hainanhua but Li or Miao or Tanka or Danzhouhua range from if you squint funny it is sort of the same language group to probably a different language family altogether.
Yet all of them, along with languages like Zanhae (Shanghai) use the same writing system. In the same way that writing in European languages is all Phoenician Alephbet based, the norm in Asia is/was Chinese character based writing systems.
A lack of a unique writing system for Hainanhua, educational materials, or a romanization system means that, despite 15 years on the island, I barely speak any Hainanhua. However, the first four or five sentences I learned was enough for me to realize that it's got different vocabulary and different grammar than Mandarin.
Overall, as travel and mass media (from the printed book to the radio) have become more common, we've seen a worldwide trend in the reduction of local languages (someone recently posted an excellent write up on Napoleonic soldiers not speaking a standard French) in favor of regional languages and regional languages in favor of national ones.
India just happens not to, so far, been as good at this as France or Germany. China has only been slightly better at it that India and mostly that's by convincing people who know nothing about Chinese languages (including rather a lot of Chinese people) that what most of the country currently have are regional "accents". These so-called accents which the government might deign to agree are "dialects" are sufficiently mutually unintelligible that movie theater movies have subtitles.
I have a corollary question: how much did Communism in Russia and China have an effect on language homogeny?