Format a timespan with up to two fields
What you want to do, is use early-returns (FTW). Also, let the formatter do the string work for you. Right tool for the job.

Consider your code, rewritten in Ideone...:

static string FormatRushTime (TimeSpan span)
{
    if ( span.Days != 0 )
    {
        return String.Format("{0:d}d {1:d}h", span.Days, Math.Abs(span.Hours));
    }
    if ( span.Hours != 0 )
    {
        return String.Format("{0:d}h {1:d}m", span.Hours, Math.Abs(span.Minutes));
    }
    if ( span.Minutes != 0 )
    {
        return String.Format("{0:d}m {1:d}s", span.Minutes, Math.Abs(span.Seconds));
    }
    return String.Format("{0:d}s", span.Seconds);
}