Calculate working days and excluding specific dates (Holidays)
Bug
There is a bug in this method. It counts non-working days because the workDay condition needs to be negated.
return 
    Enumerable
        .Range(0, (finishDate - current).Days)
        .Count(day =&gt; !isExcludedDate(current.AddDays(day)));


Naming
Then comes the naming. What's with the prefixes fw, dtm, lst? In C# we don't use the hungarian notation. You should use either the camelCase or PascalCase naming where appropriate.

Closures
You could take advantage of closures and simplify the Count
public static int GetWorkingDays(this DateTime current, DateTime finishDateExclusive, List&lt;DateTime&gt; excludedDates)
{
    Func&lt;int, bool&gt; isWorkingDay = days =&gt;
    {
        var currentDate = current.AddDays(days);
        var isNonWorkingDay =
            currentDate.DayOfWeek == DayOfWeek.Saturday ||
            currentDate.DayOfWeek == DayOfWeek.Sunday ||
            excludedDates.Exists(excludedDate =&gt; excludedDate.Date.Equals(currentDate.Date));
        return !isNonWorkingDay;
    };
   
    return Enumerable.Range(0, (finishDateExclusive - current).Days).Count(isWorkingDay);
}  

Depending on how long the List&lt;DateTime&gt; excludedDates is, you may consider using a HashSet&lt;DataTime&gt;.
Upper range

1 + (dtmFinishDate - dtmCurrent).Days


Most .NET APIs consider the upper range exclusive thus it might be a good idea to follow this style by removig the +1 and renaming the finishDate to finishDateExclusive.