It often happens that a single C# solution contains some projects that are x86-specific (usually by having native dependencies) and others that are AnyCPU.
Up until recently I've always gone into the configuration manager and made sure that the solution platform was AnyCPU. This isn't too much of a problem; it requires occasional tweaks like the ones mentioned here, but overall isn't too bad.
However I recently started wondering if these efforts are misguided. I'm clearly going against the way VS2010 (and previously 2008) is designed to handle this. "Mixed Platforms" is actually an accurate description, and although it initially feels like there's something wrong, upon further thought I have to conclude that it's no more wrong than "Any CPU".
So, lately I have been trying to choose between keeping "Mixed Platforms" or changing to "x86" as my Solution Platform in such cases. The latter reflects the intention: the final exe is x86, and runs in 32-bit mode on 64-bit OSes. The former however is what Visual Studio really wants it to be.
In your experience, is there a particular solution platform that is more suitable in any way than the others in this situation?
Note 1: in every case that I've encountered, x86 is justified by native dependencies and AnyCPU is justified by being an external library that is really platform-independent.
Note 2: if I understand correctly, the solution platform doesn't make much of a difference; it's just a name. It seems to change the default "to-build-or-not-to-build" checkbox state when new projects are added, but that's about the only effect that it has. Right?