There's more to experience when you log in!
Here is the code snippet which shall work for you.
BinaryFormatter _formatter = new BinaryFormatter();
MemoryStream serializedLayers = new MemoryStream();
FeatureLayer layer = (FeatureLayer)GetMapControl().Map.Layers;layer.Enabled = true;
_formatter.Serialize(serializedLayers, GetMapControl().Map.Layers);layer.Enabled = false;
serializedLayers.Position = 0;
FeatureLayer layer2 = (FeatureLayer)_formatter.Deserialize(serializedLayers);GetMapControl().Map.Layers.Remove(GetMapControl().Map.Layers);GetMapControl().Map.Layers.Add(layer2);
I am able to get back the visibility true. Since it was true when serialized.