Personally, I would sort the string and just count the repetitions:
string s = "KRRSLSG";
char[] data = s.ToCharArray();
Array.Sort(data);
char last = '\0';
Dictionary<char, int> counts = new Dictionary<char, int>();
foreach (char c in data)
{
if (last == c)
{
counts[c]++;
}
else
{
last = c;
counts.Add(c, 1);
}
}