SPList.DefaultView

The SDK says: “An SPView object that represents the default view.”

But if you want to change e.g. the ViewFields from the default view, you cannot use SPList.DefaultView.ViewFields.Add(fieldname);

Instead use

SPView defaultView = list.Views[list.DefaultView.ID];
defaultView.ViewFields.Add(fieldname); // internal field name
defaultView.Update();

to modify the default view. It seems the DefaultView property cannot modify the View itself.