Actually your executable is targeting some other resources found in the project folder (folder names also matter in this context; see
Solution 1 by
OriginalGriff for that because many things are required to run an application no matter if it
just says Hello world in your Console). First of all, I would suggest that you try to build the project as Release, not Debug.
There is a difference[
^].
Secondly, you should always use Project --> Publish (
Right click project, select Publish) to get the portable project package. Visual Studio just helps you in developing and debugging the application by creating a folder and managing your files there. You should (while releasing the project) always try to build the project while setting build type to Release and get the published project; Visual Studio would guide you in a GUI how-to do that! Visual Studio would ask you to select some dependencies, add some other check ups, and generate an Installer for your project. You can then share that package, it would allow user to install the application. You cannot simply copy/paste it from one location to another (
unless it is stand-alone).
In release build type, Visual Studio omits debugger assemblies to be used in the executable. Where as in debug mode, Visual Studio tries to add them, and to handle breakpoints and other exceptions that might be thrown. You can also notice the difference in size of both executable files!