That's a good way of getting your result. If your geometry is not clean, you may have strange results. Hopefully the geometry is clean. After the intersect, add a field and use the Calculate Geometry tool to get your lengths.
This probably belongs in the ArcGIS Desktop forum.