title: Declaring an object which can be of any Type in c#
body: <p>I am looking for an implementation similar to the type 'id' in objective c which can be of any type during runtime.Is it possible to do that in c#?</p>
  
  <p>let me explain my requirement</p>
  
  <pre><code>id abc;// a common type which can hold any object during runtime
  if(cond1)
  {
   Option1 opt1 = new Option1();//opt1 is an object of user defined class Option1
   abc = opt1;
  }
  else if(cond2)
  {
   Option2 opt2 = new Option2();
   abc = opt2;
  }
  ...
  </code></pre>
  
  <p>How can I do the same in c# ?
  Thanks,
  Nikil.</p>