No conozco .Net (y no por falta de ganas), pero según lo poco que tengo oido, necesitarás para ejecutar tus programas en los clientes tener instalado framework.net. Es que realmente los ejecutables se traducen a un lenguaje de bajo nivel interpretado por una tal CLR (common language library, o algo así). Total que en los equipos en que quieras ejecutar tus pgms, necesitan una 'máquina virtual' (tipo java, ¿no?).
En fin, a ver si alguien que sepa de esto nos explica mejor el tema.
Un saludo.