A C nyelv története egészen 1972-ig nyúlik vissza. A nyelvet eredetileg Dennis Ritchie tervezte és története szorosan összefonódik a Unix történelmével. A Unix-ot eredetileg assembly-ben Ãrták a DEC PDP-7-es tÃpusú számÃtógépére.
Az assembly hátránya, hogy gépfüggÅ‘ kódot eredményez, vagyis a megÃrt kód nem hordozható két egymástól eltérÅ‘ architektúrát alkalmazó gép esetén. Ez bármilyen program esetén problémás tud lenni, de a Unix esetén kifejezetten az volt, mivel a bevezetése után felmerült az igény, hogy további géptÃpusokra is elkészÃtsék. A PDP-11-es gépre szánt változat is eredetileg Assembly-ben Ãródott és a fejlesztÅ‘k azzal találták magukat szemben, hogy két egymástól eltérÅ‘ kódbázist kell karbantartaniuk. Ez a probléma leginkább a segédprogramok esetén ütközött ki.
Ken Thompson, Dennis Ritchie kollégájának az ötlete az volt, hogy készÃt egy programozási nyelvet, hogy a segédprogramok kódját egységesÃteni tudják. Eredetileg a Fortrant szerette volna egyszerűsÃteni, de ebbÅ‘l nem lett semmi, mivel inkább a BCPL nyelvet vette alapul, amire erÅ‘s hatással volt az ALGOL nyelv. A programozási nyelvét B-nek nevezte el, utalva ezzel a BCPL gyökerekre. 1971-ben Dennis Ritchie elkezdte továbbfejleszteni a B nyelvet, kihasználva a PDP-11 lehetÅ‘ségeit. Eredetileg az Å‘ variánsát Új B-nek (New B, NB) nevezte el és ezt felhasználva Thompson elkezde újraÃrni a Unix rendszermagot az új nyelvben. Az újraÃrás erÅ‘sen hatott a nyelv fejlesztésére és további funkciók bevezetését igényelte, majd 1972-ben átnevezték a nyelvet C-re.
A nyelv folyamatosan fejlÅ‘dött, újabb és újabb funkciókkal. Brian Kernighan és Dennis Ritchie A C programozási nyelv cÃmű könyve 1978-ban jelent meg és képezte az alapját az elsÅ‘, nem hivatalos C szabványnak. Az elsÅ‘, ténylegesen szabványosÃtott C verzió 1989-ben készült el. Az elkészültét egy 6 éves elÅ‘készÃtÅ‘ munka elÅ‘zte meg. A szabvány a C89 jelzést kapta. Ezt 1995-ben követte a C95, majd 2000-ben a C99. Ezt 2011-ben követte a C11, majd 2018-ban a C17, ami jelenleg a legfrissebb elfogadott változat. A következÅ‘ változat a C23 kidolgozás alatt áll.
A C mai napig a modern operációs rendszerek alapját képezi. Ha Windows vagy Linux esetén egy rendszerhÃvást szeretnénk lebonyolÃtani, akkor az elÅ‘bb-utóbb valahol C kompatibilis függvényhÃvásként fog realizálódni a kernelben.
A C fejlesztésénél a cél az volt, hogy egy magas szintű, erÅ‘sen tÃpusos programozási nyelv legyen. Sajnos mindkét kijelentés nézÅ‘pont kérdése, mivel az assembly nyelvnél sokkal magasabb szintű ugyan a C, de az idÅ‘ elÅ‘rehaladtával megváltozott a magas szintű és az erÅ‘sen tÃpusos nyelvekkel szemben támasztott követelményrendszer, ezért manapság inkább egy gép közeli programozási nyelvnek nevezhetÅ‘.