title: Where are CLR-defined methods like [delegate].BeginInvoke documented?
body: <p><em><strong>[EDIT, Completely rephrased:] Seems like my question was poorly worded indeed, and poorly received too. So I hope that this complete rephrasing helps...</em></strong> </p>
  
  <p>MSDN tells clearly specifies:
  <a href="http://msdn.microsoft.com/en-us/library/system.windows.forms.control.begininvoke.aspx">Control.BeginInvoke()</a> Executes a delegate on the thread that the control's handle was created on, normally this would be the GUI thread. And <a href="http://msdn.microsoft.com/en-us/library/system.windows.threading.dispatcher.begininvoke.aspx">Dispatcher.BeginInvoke()</a> will run on the thread where the Dispatcher object was created. This would be any thread created by me.</p>
  
  <p>But for delegates <em>"the <a href="http://msdn.microsoft.com/en-us/library/2e08f6yc%28v=vs.110%29.aspx">CLR automatically defines</a> BeginInvoke and EndInvoke"</em> and these calls run on a ThreadPool-thread instead. Apart from this slightly surprising different behaviour I wonder how I can find the specs of all functions that automatically get implemented. </p>
  
  <p>For example: Intelli-sense shows that my delegate has a DynamicInvoke(). Class <a href="http://msdn.microsoft.com/en-us/library/y22acf51.aspx">System.Delegate{}</a> does have a DynamicInvoke() which might imply that my delegate inherits it. But Delegate{} has no BeginInvoke(). And Delegate{} has several functions that my delegate has not. Also my delegate gets a GetObjectData() method. And this seems to come from ISerializable.  </p>
  
  <p>So in conclusion, a delegate appears gets its methods from (1) the CLR "automatically", (2) some subset of Delegate{} possibly MulticastDelegate{}, and possibly (3) ISerializble. <strong>Where can I find a comprehensive specification of all methods a delegate gets? Especially interesting is BeginInvoke(), and it's exact signature,</strong> as the two aforementioned methods with that name have different sets of signatures.</p>
  
  <p>[Someone suggested in an edit that a "delegate" is a "Delegate". I daresay, it is not.]</p>
  
  <p>Thanks</p>