Partiamo subito col dire che il C non è affatto adatto per chi volesse imparare a programmare partendo da zero!
Questo perchè, è vero che il C è un linguaggio ad alto livello molto potente ma costringe il programmatore ad eseguire molte operazioni di programmazione che non sono per nulla ad alto livello, come ad esempio la gestione della memoria (argomento ostico per molti).
Per cui diciamo che dovreste prendere in considerazione il C solo dopo aver imparato altri linguaggi più semplici, come Python, Pascal oppure, perchè no il Perl, ad esempio!
Detto questo passiamo ad elencare le caratteristiche salienti di questo linguaggio:
Buona portabilità (Se non si fa troppo uso di librerie non standard)
Possibilità di sfruttare le risorse a basso livello della macchina
Ottimo supporto per i puntatori, addirittura migliore di quello offerto dal pascal
Ampia disponibilità di compilatori free e per ogni piattaforma Windows,Unix ecc
Alcuni difetti o difficoltà:
Niente "garbage collection", ossia spetta al programmatore tenere sotto controllo l'utilizzo della memoria
Non esistono funzioni di utilità generale,come nel basic o nel pascal (cls, clrscr per pulire lo schermo ad esempio)
Il fatto che sia case-sensitive (cioè differenza tra maiuscole e minuscole) potrebbe essere fastidioso per alcuni