Un compilador traduce un programa completo a lenguaje de máquina de una sola vez, mientras que un intérprete traduce línea a línea durante la ejecución. Un intérprete permite depurar más fácilmente durante el desarrollo, mientras que un programa compilado es más rápido y seguro una vez terminado. C# se compila a código intermedio que es luego compilado a código nativo y ejecutado por el Common Language Runtime de .NET, el cual proporciona servicios como recolección de basura y ejecuc