The correct way to Fire-and-Forget an asynchronous delegate
- by Programming Hero
Consider me rusty on the subject of asynchronous delegates. 
If I want to call a method asynchronously, in a fire-and-forget style, is this an appropriate way to do it?
Action action = DoSomething;
action.BeginInvoke(action.EndInvoke, null);
The DoSomething() method catches all exceptions and deals with them internally.
Is the call to EndInvoke appropriate? Required? 
Is there a clearer way to achieve the same behaviour?