<p>Does anyone know of any good library that abstracts the problem of path manipulation in a nice way? I'd like to be able to combine and parse paths with arbitrary separators ('/' or ':' for example) without reinventing the wheel.</p>

<p>It's a shame that <code>System.IO.Path</code> isn't more reusable.</p>

<p>Thanks</p>

System.IO.Path.Combine will work great for many different types of paths:
http://msdn.microsoft.com/en-us/library/system.io.path.combine.aspx
System.IO.Path.Combine uses the current platform standard separators to combine paths. That means on Windows it uses "\" and on unix/linux (mono) it uses "/". Can you give some samples of what paths you are trying to combine and on what platform?