have you tried using the line – circle intersection method?
This post shows an example of how to use it:
This is the function:
Rhino.Geometry.Intersect.Intersection.LineCircle(line, circle, out t1, out p1, out t2, out p2)
Hope this helps. You can also use a Grasshopper component after your C# script and continue with another C# script, etc.