Actually, having a board/pc using 64bit only means that it is using 64bit “pointer” to access the RAM. There is no performance gain nor loss and modern OS can uses both at the same time.
Imagine a factory, the cores and threads are your employees and the speed is, well, the speed at which they can complete their task. Now as you want 3 softwares (and much more behind like vncserver, maybe a cups server and other things) you can see them as 3 delivery “post” all of them waiting for employees to finish their task. The more employee you have the less the software has to wait and the same thing for the speed.
After that if you wonder if you need more Cores/Threads over CPU Speed you have to ask yourself what are your needs. As you said you wanted to use it principally as a server instead of desktop machine, you want to prioritize your core and threads over the speed. Server uses a lot of thread as it has a lot of software. If you wanted a desktop the speed would be prioritized.
Of course there is exception like you don’t want a 3.4GHz with 2 cores with 1 thread each. I would rather have a 2.6GHz cpu with 2 cores and 2 threads each. The tasks are done less quickly BUT there are more employees to do them.
Feels free to read online about “which cpu do I need”. Lot of posts and documentations are waiting for you to explain what you really need.
To answer your question, personally I would choose the BPI-M3 as it has more cores/threads and the speed is higher.