Q:

Convert String To camelCase from TitleCase C#

I have a string that I converted to a TextInfo. ToTitleCase and removed the underscores and joined the string together.   Now I need to change the first and only the first character in the string to lower case and for some reason, I can not figure out how to accomplish it.   Thanks in advance for the help. 
class Program
{
    static void Main(string[] args)
    {
        string functionName = "zebulans_nightmare";
        TextInfo txtInfo = new CultureInfo("en-us", false).TextInfo;
        functionName = txtInfo. ToTitleCase(functionName).Replace('_', ' ').Replace(" ", String. Empty);
        Console. Out. WriteLine(functionName);
        Console. ReadLine();
    }
}

Results: ZebulansNightmare
Desired Results: zebulansNightmare
UPDATE:
class Program
{
    static void Main(string[] args)
    {
        string functionName = "zebulans_nightmare";
        TextInfo txtInfo = new CultureInfo("en-us", false).TextInfo;
        functionName = txtInfo. ToTitleCase(functionName).Replace("_", string. Empty).Replace(" ", string. Empty);
        functionName = $"{functionName. First().ToString().ToLowerInvariant()}{functionName. Substring(1)}";
        Console. Out. WriteLine(functionName);
        Console. ReadLine();
    }
}

Produces the desired output

A:

You just need to lower the first char in the array.  See this answer
Char. ToLowerInvariant(name[0]) + name. Substring(1)

As a side note, seeing as  you are removing spaces you can replace the underscore with an empty string. 
.Replace("_", string. Empty)

A:

Implemented Bronumski's answer in an extension method (without replacing underscores).  
 public static class StringExtension
 {
     public static string ToCamelCase(this string str)
     {                    
         if(!string. IsNullOrEmpty(str) && str. Length > 1)
         {
             return Char. ToLowerInvariant(str[0]) + str. Substring(1);
         }
         return str;
     }
 }

 //Or

 public static class StringExtension
 {
     public static string ToCamelCase(this string str) =>
         return string. IsNullOrEmpty(str) || str. Length < 2
         ?  str
         : Char. ToLowerInvariant(str[0]) + str. Substring(1);
 }

and to use it:
string input = "ZebulansNightmare";
string output = input. ToCamelCase();

A:

Here is my code, in case it is useful to anyone
    // This converts to camel case
    // Location_ID => LocationId, and testLEFTSide => TestLeftSide

    static string CamelCase(string s)
    {
        var x = s.Replace("_", "");
        if (x.Length == 0) return "Null";
        x = Regex. Replace(x, "([A-Z])([A-Z]+)($|[A-Z])",
            m => m.Groups[1].Value + m.Groups[2].Value. ToLower() + m.Groups[3].Value);
        return char. ToUpper(x[0]) + x.Substring(1);
    }

The last line changes first char to uppercase, but you can change to lowercase, or whatever you like.