By graph here I mean something resembling these images:
Graphviz is still today, in my opinion, one of the best graph library there is. However, integrating it to .Net is a pain.
It is possible to call the command line tool to generate a shape output based on your graph input, then you read the output and lay the elements on a custom control that displays whatever shapes graphviz has calculated. It's very hacky but it's the best way our team have found of integrating graphviz with .Net a few years ago.
A better solution might exist today; at that time GLEE was still very embrionic and I haven't seen the progress Microsoft did since that time.