Как Console.WriteLine() воспринимает объект StringBuilder-а?
Прочитай в книге про переопределение ToString
public class Test
        {
            private string _text;
            public Test(string text)
            {
                this._text = text;
            }

            public override string ToString()
            {
                return _text;
            }
        }

var x = new Test("текст");
            Debug.WriteLine(x);
Console.WriteLine для печати объектов использует метод ToString
и StringBuilder.ToString как раз возвращает сбилженую строку.

По-умолчанию, ToString возвращает имя типа.

Ну и вот код, который отрабатывает Console.WriteLine(obj)
https://source.dot.net/#System.Private.CoreLib/Tex...