I would personally generate a string and keep adding random number values to the end, as most number types would not have as many digits as you would like.
string Number = "0.";
Random rand = new Random();
for (int i = 0;i < 20;i++)
{
Number += rand.Next(0,10);
}
solved c# How to generate big double numbers randomly, with a long tale?