Isso é o que eu uso para pesquisar em nosso diretório:
DirectoryEntry objDE;
objDE = new DirectoryEntry("LDAP://cn=computers,dc=lab,dc=test");
static String[] strProperties = { "name" };
DirectorySearcher dd = new DirectorySearcher(objDE, "(&(objectCategory=group)(objectClass=user)(cn=name))", strProperties, SearchScope.Subtree);
isso é c #, eu nunca misturei c # e powershell, mas isso deve te apontar na direção certa. não esqueça
Using System.DirectoryServices
também.