Se crede că ceea ce astăzi este cel mai cunoscut sub numele de "Urdu" s-a născut în secolul al XI-lea d.Hr. în Lahore și în împrejurimi, când Imperiul Ghaznavid a intrat în subcontinent și a domnit în Punjab, țara celor cinci râuri.
Punjab era cunoscut și sub numele de "Hind" sau țara de la est de Indus.
Ghaznavidii, deși turci din punct de vedere rasial, vorbeau persana ca limbă principală. Atunci când au cucerit Punjab sau Hind, cu capitala Lahore, au intrat în contact cu populația locală, care vorbea o limbă indo-ariană și care a început să adopte cuvinte persane în limba lor. Această limbă locală a fost, de asemenea, strămoșul limbii Punjabi standard moderne.
Contactele dintre persană și limba nativă din Punjab au început să formeze o nouă limbă, care a devenit cunoscută sub numele de "Lashkari Zaban" sau limba batalioanelor.
Această nouă limbă, cunoscută și sub numele de hindavi, a devenit limba comună a localnicilor și a Ghaznavidilor aflați la putere în regiune. În secolul al XII-lea d.Hr., Ghaznavidii au înaintat spre est în subcontinent și au adus această limbă la Delhi, unde a fost influențată de limba locală, khariboli.
Din Delhi, s-a răspândit în mare parte din subcontinentul nordic și a devenit limba comună de comunicare. A continuat să fie influențată de khariboli și s-a răspândit în orașe precum Lucknow și Hyderabad Daccan. De asemenea, a primit noi nume și titluri de-a lungul secolelor.
Poeții nativi din aceste orașe și din cea mai mare parte a regiunii au contribuit la dezvoltarea sa și i-au adăugat multe cuvinte persane și chagatai. De asemenea, au adăugat indirect cuvinte arabe pe care persana le conținea deja.
A continuat să evolueze în timpul sultanatului din Delhi sub influența lui Khariboli.
Imperiul Mughal a fost un alt imperiu musulman de origine turcică și vorbea în mod nativ limba chagatai, iar cealaltă limbă era persana, deși nu erau persani din punct de vedere etnic sau rasial iranieni.
În această perioadă, limba a devenit cunoscută sub numele de Zaban-i-Ordu sau limba taberei regale.
La sfârșitul secolului al XVIII-lea d.Hr., se crede că poetul Ghulam Mashafi i-a dat numele de "Urdu", prescurtat de la "Zaban-i-Urdu".
Cuvântul provine din Chagatai, limba nativă a Mogulilor, care aparținea subfamiliei de limbi turcești orientale. Chagatai era strâns înrudită cu uzbeca și uigurul de astăzi și înrudită de departe cu turca de astăzi, deoarece toate aparțineau aceleiași familii de limbi turcești.
În propria sa traducere autohtonă, era Lashkari Zaban și Lashkari pe scurt.
De asemenea, în timpul Imperiului Mogul, ceea ce a devenit cunoscut sub numele de urdu a fost o limbă de curte în mai multe orașe importante din Asia de Sud, printre care Delhi, Amristsar, Lucknow și Lahore.
Pe vremea Imperiului Britanic, a devenit cunoscută și sub numele de "hindustani" sau limba Indusului, țara Indusului. A continuat să servească drept limbă de curte în aceleași orașe.
A fost adoptată ca primă limbă de mulți oameni din nordul Indiei.
Până la sfârșitul dominației britanice și independența Pakistanului, a fost aleasă ca limbă națională pentru populația țării, deoarece aceasta vorbea limbi și dialecte diferite.
În India, a devenit limba națională, dar a primit numele de hindi și a fost scrisă în alfabetul Devanagari. De asemenea, a folosit o cantitate mai mică de cuvinte arabe, persane și chagatai, în locul lor fiind adoptate cuvinte sanscrite.
În prezent, este cea mai răspândită limbă vorbită în Pakistan în ceea ce privește numărul total de vorbitori și este o limbă înregistrată în 22 de state indiene.