d'autre part tu peut en plus appeler en C# du code qui serait contenu dans des dll écrite en pur C++ et compilé comme telle.
la syntaxe doit ressembler à ça :
[<dllimport(@"dom_de_la_dll.dll", entrypoint="nom_de_la_fonction">]
extern type nom_de_la_fonction(param);
Je sors ça du F#, mais je crois que c'est exactement pareil ou très semblable en C#.