Es un error de ejecución que puede ser manejado.

Si no es gestionada, la aplicación falla y crashea

Si es gestionada, la aplicación puede seguir su flujo normal

En C# la gestión de errores las manejamos con

int x = 0, y = 5, z;
float result;

try
{
	result = y/x;
}
catch (DivideByZeroException ex)
{
	MessageBox.Show(ex.ToString());
}
catch (Exception ex)
{
	MessageBox.Show(ex.ToString());
}
finally
{
	//
}