When I unload projects in visual studio, where does VS save this setting?

This information is stored in the solution user options file (.suo) which you can find in the same directory as the solution file. As the name implies this is user specific information which means sharing this across the team will be difficult because then everyone will need to live with the same options and store files in the exact location because the .suo file contains full paths.

For anyone else coming here with Visual Studio 2019, the unloading of projects is no longer saved in the SUO (at least in my experience). To save your unloaded project settings, you want to create a solution filter file (.slnf) which is the same as your solution file (.sln) except that it stores which projects you want loaded or not when opening the solution. Once created, you will double-click the .snlf file instead of the .sln file in order to load your filtered projects.

To create the solution filter file you can follow the instructions at this link or follow the summary below:

  1. Open your solution (.sln)
  2. Unload the projects that you want filtered out
  3. Right-click on the solution from within the Solution Explorer
  4. Choose Save As Solution Filter
  5. Choose a location to save the file (I saved it right next my .sln file)

This will add the .slnf to your recently opened solutions list so you can either open from there going forward or navigate to the .slnf file and double-click it.

If you still want to see your unloaded projects after opening the .slnf, highlight the solution from within the Solution Explorer and click the Show All Files icon.