Since Javascript is the language that I am the most proficient at, I am familiar with using functions as first-class objects. I had thought that C# lacked this feature, but then
You can create your own delegate with more than 16 arguments. Or you can use Tuple (or any other data structure) as parameter.