Cita:
Iniciado por erick_arcini Simplemente te digo que no... C/C++ es la base de todo, y eso no me lo va a negar nadie.
No veo porque puedes negar su afirmación. No se está comparando quien es el padre o el hijo de cada lenguaje. C# es un lenguaje de alto nivel, como Java. C/C++ son considerados de más bajo nivel y Assembly más todavía. Ser de bajo o alto nivel no implica que sea mejor o peor, simplemente es que tan cercanos están al lenguaje del dominio del problema.
@Layca: Nunca es sabio hablar en términos absolutos. Que C++ siga un estándar y no sea propietario no necesariamente lo hace "mejor".
Digamos que el entorno donde se desarrolla es una empresa que tiene netamente licencias de Windows. En ese caso, la ventaja de ser "multiplataforma" pierde valor.
Por otro lado, C#, si bien fue creado por Microsoft, es de libre disposición, e incluso corre en Linux y Mac.
Y sobre si son más rápidas y eficientes.. pues, en mi experiencia, depende muchísimo del programador. Es muy sencillo olvidar cerrar punteros, dejar abiertos accesos a memoria y similares en C++. En C# esto no se da.
Eso sí, no quiero decir que C# sea mejor. Como bien mencionaron antes, cada lenguaje responde a una necesidad. Personalmente, C# (y .NET) me gustaron bastante cuando los usé. Actualmente, sin embargo, programo casi enteramente en Ruby, porque encontré que se adaptaba mejor a mi flujo de trabajo.
En el comentario que di, simplemente establecí el hecho que tal vez le convendría, si es un desarrollo personal, probar con C# el cual tiene una curva de aprendizaje mucho menor, el soporte de un BCL para acceder a muchas funciones y un buen IDE (VStudio o VC# 2005-2008).
Por cierto, uno de mis amigos es un mecatrónico y es bastante bueno en C++. Parece que hay una regla por ahí ^^.