title: C# Process.Start, Thread.IsBackGround, BackgroundWorker and .Net.Remoting
body: <p><br>I need an advice because I'm "locked"...</p>
  
  <p>I have a client-server application using .NetRemoting between the client process and the server one.
  <br>Server process raises events to the client calling a method.
  <br>Then, the client uses a BackGroundWorker to transmit values to User Interface. 
  <br>
  <br>Usualy, the server is already running when the client is launched.
  <br>- When BackGroundWorker.DoWork() is called, Thread.CurrentThread.IsBackground equals True
  <br>- In BackGroundWorker_RunWorkerCompleted event, Thread.CurrentThread.IsBackground equals <strong>False</strong>
  <br>
  <br>But, if, during the client is loading (.exe is opening), it needs to open (with Process.Start()) the Server process (.exe) before it connects
  <br>then, in BackGroundWorker_RunWorkerCompleted, Thread.CurrentThread.IsBackground is still equal to <strong>True</strong> and UI can not be changed in this thread.
  <br>In that case, I need to open an other client (connecting to the same server) to have a good behavior.
  <br>
  <br>
  <br>What could be the difference between these two situations ?
  <br>Thanks.</p>