Each element of text you want to use distinct formatting on should be added separately, by adding to the cell's RichText collection property.
var cell = ws.Cells[1,1];
cell.IsRichText = true; // Cell contains RichText rather than basic values
cell.Style.WrapText = true; // Required to honor new lines
var title = cell.RichText.Add("This is my title");
var text = cell.RichText.Add("\nAnd this is my text");
Note that each time you Add() a new string, it will inherit the formatting from the previous section. As such, if you want to change the default formatting you will only need to change it on the first string added.
This behaviour can, however, cause some confusion when formatting your text. Using the example above, the following code will make all of the text in the cell Bold and Italic - this is not the desired behavior:
// Common Mistake
var title = cell.RichText.Add("This is my title");
title.Bold = true;
title.Italic = true;
var text = cell.RichText.Add("\nAnd this is my text"); // Will be Bold and Italic too
The preferred approach is to add all your text sections first, then apply section-specific formatting afterwards, as shown here:
var title = cell.RichText.Add("This is my title");
title.FontName = "Verdana"; // This will be applied to all subsequent sections as well
var text = cell.RichText.Add("\nAnd this is my text");
// Format JUST the title
title.Bold = true;
title.Italic = true;