Match
возвращает первое совпадение, см. this о том, как получить остальное.
Вместо этого следует использовать Matches
.Тогда вы можете использовать:
MatchCollection matches = Regex.Matches(text, search);
Console.WriteLine("there were {0} matches", matches.Count);