Я бы не стал использовать Split, поскольку он предназначен для получения нескольких результатов. Я бы придерживался кода в первом примере, хотя второй блок должен на самом деле читать ...
string start = searched.Substring(0, pos);
string endstring;
if(pos < searched.Length - 1)
endstring = searched.Substring(pos + "something".Length);
else
endstring = string.Empty
Ключевым отличием является длина строки, которую нужно найти (отсюда довольно странное «что-то». Длина, так как этот пример предназначен для того, чтобы вы могли использовать собственную переменную).