Urdu and Modern Standard Hindi are considered different languages officially and in the sociolinguistic sense. However, they are not even distinct dialects, but rather different literary styles of a single dialect, Dehlavi. At the colloquial level they are virtually identical, to the point that speakers often cannot tell whether someone is speaking “Hindi” or “Urdu”. There are differences in vocabulary depending on the educational level and minor pronunciation differences of some Persian and Arabic sounds, but the grammar is identical, and both styles have heavy Persian and Sanskrit influences. This ambiguous colloquial language is often called Hindustani and is intentionally used in Bollywood films to target a more universal audience, including Pakistan.
In formal and academic registers, however, the differences in vocabulary become substantial, with Urdu drawing from Arabic and Persian, and Hindi from Sanskrit, to the point where they become mutually unintelligible. There is also the convention, generally followed, of Urdu being written in Persio-Arabic script, and Hindi in Devanagari.
These two standardised registers of Hindi-Urdu have become so entrenched as separate languages that often nationalists, both Muslim and Hindu, claim that Urdu and Hindi have always been separate languages. There have been some observations that the “fully standardized” Hindi register is artificial enough to make it partially incomprehensible to many people classified as Hindi speakers.
Because of the difficulty in distinguishing between Urdu and Hindi speakers in India and Pakistan, as well as estimating the number of people for whom Urdu is a second language the estimated number of speakers, is uncertain and controversial. Further information is available in the following articles: Hindi-Urdu controversy, Hindi-Urdu language and Hindi