I'm working on a pretty big project and I'm going to implement an auto-update mechanism for it. Now every classes are in one project and the output is just one .exe file and every time the user needs to update the application they need to download the new .exe file.
I thought it would be better to separate the classes in different projects to build different assemblies and every time and assembly is changed the user need to download only that one.
Afterwards I figure it out that every time I rebuild a particular assembly, I need to rebuild the start-up project as well.
Now I need to know what is the best approach to manage the projects of a C# solution for future updates.