Como faço para chamar um assembly .NET do C / C ++?

Suponha que eu esteja escrevendo um aplicativo em C ++ e C #. Eu quero escrever as partes de baixo nível em C + + e escrever a lógica de alto nível em c #. Como posso carregar um assembly .NET do meu programa C ++ e começar a chamar métodos e acessar as propriedades de minhas classes C #?