Hi, Jim.
Well, about the "static" methods and the like that you refer, they´re useful. Think that in VFP, you can have a UDF that does some specific... in .NET we don´t have such thing, because everything is OO. However, you can create a static method that´s like your UDF... why instantiate a class, if you just need to run some code? :)
Also, with a static property (field), you can easily, for example, count how many instances of a class does exists.
Another thing different (and good): in .NET you can really define "abstract" classes, so, you can guarantee that a given class cannot be instantiated directly....
Claudio Lassala