Simple circuit breaker implementation
Welcome to Code Review.  Not too bad but I would suggest a few things.

_failureCount is only used in ExecuteAction so I would only define it locally to ExecuteAction and renamed it simply failureCount.

You may want to expose threshold publicly as a property since different instances could have differing thresholds.  Suggest:

public int Threshold { get; }


Consider having a ToString() override.

CircuitState enum is okay where its at, but if it were me, I usually define it external to the class.  

You may consider having the State be gettable publicly.  Suggest:

public CircuitState State { get; private set; }


I see no reason for Invoke().  Just call ExecuteAction(_currentAction) directly.

The constructor has a timeout parameter.  I would encourage clarity in the name with millisecondsTimeout.

And finally, the biggest issue I see is that you really should get into the practice of use { } with if.  I know C++ was okay with this, and C# allows it, but here at CR we strongly discourage it because it could lead to nefarious hard-to-find bugs. There are lots of places where you would change this; here is but one example:

if (State != CircuitState.Open)
{
    ChangeState(CircuitState.Open);
}