C# and Rhino novice needs help with using Rhino3DMIO.Desktop

I do have some programming experience, but not really in a professional setting (these days). I am re-acquainting myself with a project in mind, I am fairly new to using C# (terrible at C++!). Anyway, I am trying to use Rhino3DMIO.Desktop to read rhino files in order to translate into another format, and I have figured out how to get all the curve objects from a .3dm file:

Rhino.FileIO.File3dm model;
model = Rhino.FileIO.File3dm.Read(fname, File3dm.TableTypeFilter.ObjectTable, File3dm.ObjectTypeFilter.Curve);

Which I am then using a for each loop right now to loop through all the curve objects so:

foreach (Rhino.FileIO.File3dmObject obj in f3dobjs)
{
Debug.Print("Object Name: " + obj.Name);
Debug.Print("ID String " + obj.Id.ToString());
Debug.Print("Object Type: " + obj.Geometry.ObjectType.ToString());
}

This just gives me the object name (if any), a “guid” id string for the object, and the string “curve”. Note that I was previously reading all the objects in the file, but right now I would just like to concentrate on curves.

But for the life of me, I can’t seem to figure out how to continue from this point to get the number of points, type of curve, coordinates, etc, you name it! Any help is greatly appreciated. Eventually, I want to transition to doing this in python, but I feel using C# will give me a better understanding. Also, getting the curve data is just a start, Hopefully, if I can get this figured out, I’ll be able to expand my knowledge from there!

Well, after my last post, I found I am making a little progress. If I cast my File3dmObject using

Rhino.Geometry.Curve curveobj = (Rhino.Geometry.Curve)obj.Geometry;

I can access the proper members/properties/etc, like curveobj.IsLinear() and on and on. But I still welcome any tips, etc.