Cada proyecto en una solucion genera un assembly, que puede ser un ejecutable (.exe), un modulo (.netmodule) o una libreria (.dll) Puedes crear dos proyectos, hacer referencia de uno a otro, y crear objetos e instanciarlos desde el primero.
Eso es posible, solo que no le veo mucha utilidad