Soluţia Microsoft pentru această problemă este limbajul numit C# (pronunţat See Şarp). C# este un limbaj modern, orientat pe obiecte, având o sintaxă asemănătoare cu cea din C/C++ şi Java, care permite programatorilor să construiască rapid o varietate largă de aplicaţii pentru platforma Microsoft .Net, platformă care asigură instrumente şi servicii pentru exploatarea sistemelor informatice şi comunicaţiilor.
Datorită designului elegant orientat pe obiecte, C# este o alegere bună pentru conceperea a variate componente - de la aplicaţii la nivel de sistem şi până la realizarea aplicaţiilor comerciale de nivel ridicat. Folosind concepte simple de limbaj C#, aceste componente pot fi uşor convertite în servicii Web XML, permiţând accesarea lor prin Internet de către orice program rulând pe orice sistem de operare.
Unul dintre scopurile limbajului este acela de a simplifica programarea orientată pe componente. Prin componentă se înţelege un ansamblu de clase de obiecte care interacţionează pentru a îndeplini anumite funcţionalităti.