Is there a more concise and/or readable way to write the following method?
There are at least two answers.
The short one:

public void add(int[] values, Func&lt;int, int&gt; transform = null)
{
    foreach (int v in values)
        add( (transform != null) ? transform(v) : v);
}


The efficient one:

public void add(int[] values, Func&lt;int, int&gt; transform = null)
{
    if( transform != null) 
      foreach (int v in values)
        add( transform(v));
    else
      foreach (int v in values)
        add( v);
}


Not nice, but you wanted a short version.

Maybe someone has a LINQ at hand which does this even better.