Probably you type the value for the fahrenheit
variable and then press Return (Enter).
This will get the value in the Read call and the Enter in the ReadLine.
Change to
Console.Write("Enter temp in fahrenheit: ");
double fahrenheit;
string userInput = Console.ReadLine();
if(double.TryParse(userInput, out fahrenheit))
{
double celsius = (fahrenheit - 32.0) * (5.0 / 9.0);
Console.WriteLine("Celsius is: " + celsius);
}
else
{
Console.WriteLine("Non a valid double value");
}
Console.ReadLine();
Also, the Console.ReadLine, unlike the Console.Read, returns a string and thus you need to parse and convert to a double before trying to use it. This could be done with double.TryParse that will return false when the user doesn't type a valid numeric double
Another drawback for Console.Read is that you need to call it in a loop to read all characters typed by the user till the Enter. If you try to convert 12.8 you need a completely different code to go with Console.Read. (Look at the MSDN example in the link above)