A good rule of thumb is "open DLLs, closed EXEs", that is:
When you build an EXE as AnyCPU, all you're doing is deferring the decision on what process bitness to use to the OS, which will JIT the EXE to its liking. That is, an x64 OS will create a 64-bit process, an x86 OS will create an 32-bit process.
Building DLLs as AnyCPU makes them compatible to either process.
For more on the subtleties of assembly loading, see here. The executive summary reads something like: