El IEEE Standard for Floating-Point Arithmetic (IEEE 754) es el estándar más utilizado para el cálculo de coma flotante, y es seguido por muchas implementaciones de hardware y software, incluido el compilador C#.
Esto significa que cualquier variable de punto flotante puede contener criaturas extrañas como PositiveInfinity, NegativeInfinity y Not-a-Number (abreviado como NaN). De acuerdo con las reglas aritméticas IEEE 754, algunas operaciones pueden generar cualquiera de estos valores de coma flotante no finitos. Por ejemplo, una operación de coma flotante no válida como dividir cero por cero da como resultado NaN.
En su ejemplo específico, puede ver que C# (a diferencia de VB) sobrecarga el operador/para hacer referencia a la división de coma flotante o entera. Esto significa que el compilador determina si debe hacer cálculos aritméticos enteros o de punto flotante según el tipo de los números utilizados.
También hay otros interesting subtleties. Y vale la pena leer Eric Lippert's blog entry sobre el tema.
+1 buena pregunta. y además de otras respuestas, esta es la razón por la que solo tenemos 'float/double.Is (Positive/Nagative) Infinity' mientras que no hay métodos' int.IsInfinity'. –