 <p>Firstly, using Task Manager to determine memory usage is fraught with peril. Have a read of <a href="http://www.itwriting.com/dotnetmem.php" rel="nofollow noreferrer">this article</a> to gain a clearer understanding of it.</p> <ul> <li>What other libraries are you referencing?</li> <li>What files are you loading, into streams or any other way?</li> <li>What resources do you request from the Operating System via P/Invoke</li> <li>How many instances of each form do you load?</li> <li>How many variables do you create, and of what size?</li> </ul> <p>For example:</p> <pre><code>// Will take up a lot of memory! var x = new byte[int.MaxValue]; </code></pre> <p>All that said, 9.1Mb isn't really a lot (less than 0.5% of memory on a machine spec'd with 2Gb of RAM) and more importantly, <strong>does it actually matter that your application's using 9.1Mb of RAM, or are you wasting your time investigating?</strong> Remember, your time's valuable. Would your end users rather the time was spent on something else? =)</p>