¿Es necesario que la colección que se le pasa a un bucle foreach en C# tenga un tamaño fijo?
Sí
No
Solo si se utiliza la palabra clave "readonly" para declarar la colección
Depende de la implementación específica del método que llama al bucle foreach