División BigInteger en C #

Estoy escribiendo una clase que necesita una división precisa de la clase BigInteger en C #.

Ejemplo:

BigInteger x = BigInteger.Parse("1000000000000000000000000000000000000000000000000000000000000000000000000000000000000");
BigInteger y = BigInteger.Parse("2000000000000000000000000000000000000000000000000000000000000000000000000000000000000");

x /= y;

Console.WriteLine(x.ToString());

//Output = 0

El problema es que al ser un entero, naturalmente, no contiene valores decimales. ¿Cómo puedo superar esto para obtener el resultado real de 0.5 (ejemplo dado)?

PD La solución debe poder dividir con precisión cualquier BigInteger, ¡no solo el ejemplo!

Respuestas a la pregunta(8)

Su respuesta a la pregunta