I couldn't resist to give a Linq/delegate alterantive to the original tip.
How about this:
public class Program
public static void Main()
string s = "AbCdEfGhI§$%&/()1234567890";
Func<char, char> toggle = c => char.IsUpper(c) ? char.ToLower(c) : char.ToUpper(c);
Performance may be not optimal, but probably good enoug for many cases...
I feel comfortable on a variety of systems (UNIX, Windows, cross-compiled embedded systems, etc.) in a variety of languages, environments, and tools.
I have a particular affinity to computer language analysis, testing, as well as quality management.
More information about what I do for a living can be found at my LinkedIn Profile
and on my company's web page