String.Length не учитывает суррогатные пары, он учитывает только символы UTF-16 (т. Е. Символы всегда 2 байта) - суррогатные пары считаются 2 символами.
Ваш пример не является пустой последовательностью, это последовательность с одним элементом. Чтобы создать пустую последовательность строк, вы можете выполнить
var sequence = Enumerable.Empty<string>();
EDIT OP пояснил, что они хотели создать одно значение. В этом случае
var sequence = Enumerable.Repeat("abc",1);
Мне нравится то, что вы предлагаете, но с опущенным типом массива:
var sequence = new[] { "abc" };