| 
             Trace 
           | 
          
             Debug 
           | 
        
        
          | This
            class works only when your application build defines the symbol TRACE. | 
          This
            class works only when your application build defines the symbol DEBUG. | 
        
        
          | For
            tracing, you have to use Trace.WriteLine statements. | 
          For
            tracing, you have to use Debug.WriteLine statements. | 
        
        
          | Trace
            class is generally used to trace the execution during deployment of
            the application. | 
          You
            generally use debug classes at the time of development of application. | 
        
        
          | Trace
            class works in both debug mode as well as release mode. | 
          Debug
            class works only in debug mode. | 
        
        
          | Performance
            analysis can be done using Trace class.  | 
          Performance
            analysis cannot be done using Trace class. | 
        
        
          | Trace
            runs in a thread that is different from the Main Thread. | 
          Debug
            runs in the same thread in which your code executes. | 
        
        
          | Trace
            is used during Testing Phase and Optimization Phase of different releases.
             | 
          Debug
            is used during Debugging Phase |