Alternativa
Piuttosto che decodificare il codice sorgente chiuso, che potrebbe essere illegale o non etico, suggerirei di leggere il codice da progetti open-source.
Non è necessario seguire le procedure di reverse engineering (a meno che non sia il tuo obiettivo esplicito) e puoi imparare molto.
Alcuni software open source sono software consumer o paragonabili a software consumer.
Anche il software commerciale closed source è solitamente protetto da copyright.
Reverse-engineering
Come per il software di reverse engineering a cui non si ha accesso esplicito al codice sorgente, è possibile utilizzare un decompilatore. Questi programmi esistono per diverse lingue.
Per le lingue compilate per .Net, esistono diversi software che puoi usare per fare ciò, ad esempio: Jetbrains DotPeek, Telerik JustDecompile, RedGate Reflector.
Questi software prenderanno una DLL .Net compilata e mostreranno il codice sorgente.
Sappi che gli autori del software potrebbero avere offuscato il loro codice .Net. Questa è una procedura progettata per rendere l'output di codice "riflesso" o "decompilato". Difficile da leggere e comprendere.
Altro sui decompilatori
I decompilatori sono stati creati per diverse lingue. Diverse lingue sono più facili da decompilare rispetto ad altre, quindi il risultato può variare.