Convert a string to Title Case in C#

There is no direct method like ToUpper(), ToLower() for Title Case. But using CultureInfo and  TextInfo classes we can do Title case of a string. Below method will convert the first character of each word to uppercase.

The references used:

using System.Globalization;

using System.Threading;


protected void Page_Load(object sender, EventArgs e)


   CultureInfo cultureInfo   = Thread.CurrentThread.CurrentCulture;

   TextInfo textInfo = cultureInfo.TextInfo;

   Response.Write(textInfo.ToTitleCase("csharpCornerHome<br />"));

  Response.Write(textInfo.ToTitleCase("csharp Corner Home"));

  Response.Write(textInfo.ToTitleCase("csharp@corner$home<br />").Replace("@",

"").Replace("$", ""));




The method will convert the first letter to uppercase and rest all letters to lowercase.

If you have a single word and want to convert some of the characters to uppercase, for example: Csharpcornerhome to CsharpCornerHome you can achieve this by using special characters.

You can find the difference in above all outputs. Please post your comments.


Build smarter apps with Machine Learning, Bots, Cognitive Services - Start free.

Start Learning Now