Biconnected components and all paths between two vertices of an unoriented multigraph


I’m looking for a dll with good documentation that I will call from C#/.Net
in order to:

1. generate the biconnected components of an unoriented (multi)graph (i.e.
possible loops and parallel edges);

2. generate the list of (simple) paths between two given vertices of an
unoriented (multi)graph.

The main requirements I have are:

i) “good” dll documentation with examples;

ii) performance comparable to C++;

iii) the dll is reliable, i.e. it has been sufficiently benchmarked and

iv) support: if bugs in the dll are found, then they can be dealt with in a
reasonable time;

v) licensing agreement which gives me the possibility to use this dll inside
code that I may deploy for a non-profit organization.

Does graph-tool fit these requirement ?

Are there consulting/commercial codes which may fit these requirements ?

Thanks in advance for your help.