Such a simple question.

It’s such a simple question… so you know the answer won’t be.
Or rather, answers, plural. It all begins with “It depends”. 🙂
Where to put that .exe
Depending on your intended use, .exe files (or portable programs) can be stored in different places.
- For one-time use, just run the .exe from downloads.
- For multiple uses, create a folder and place it there.
- To make it easier to use, add that folder to your PATH.
- To use it everywhere, add it to a folder in OneDrive or Dropbox.
- For portable use, put it on a thumb drive.
Just an .exe
Usually, when we download software, we’re downloading a setup or installation program. When that program runs, it copies files to proper places, adds shortcuts and menu items, and otherwise makes sure that the program you’ve installed can be easily run.
“Portable” programs need no setup. You just download them, perhaps extract them from a .zip file, and run them. The question is, where should they live? With no setup program to set up the “proper places”, we decide where to put the file(s).
I’ll use “incontrol.exe”, from the GRC website1, to illustrate the examples below. It’s a portable program comprised of a single, small .exe file. The concepts apply to almost all portable programs.
Where we store it depends on our plans for using it.
Help make it permanent by becoming a Patron.
Just once? The Downloads folder is fine
If this is a one-time thing, you can leave it wherever you downloaded it. More often than not, that’ll be in your Downloads folder.
In the example above, I’ve downloaded “incontrol.exe” to my Downloads folder.
Navigate to that folder in Windows File Explorer, and double-click the .exe file to run it. That’s it.
Alternatively, if this is a command-line utility or you just want to use the command prompt, “CD” to that folder, type the name of the .exe, and type Enter.
In the example above, I’ve “CD”ed (Changed Directory) to the Downloads folder and run “DIR” to list the Directory contents showing incontrol.exe. Typing “incontrol.exe”, or even just “incontrol”, followed by Enter, will run the program.
Since this was a one-time thing, you can delete the .exe file when you’re done with it, or archive it somewhere if you like.
More than once? Make a place
If it’s a multiple-time thing — meaning you’ll be running the program periodically — I recommend creating a folder.
Above, in Windows File Explorer, I:
- Navigated to C:\Users\%username% – my user’s “home” folder. (Replace %username% with your login ID; mine shows “leon”.)
- Created a new folder there called “programs”. The full path would be C:\Users\%username%\programs.
I then cut and pasted (AKA moved) the incontrol.exe file from the Downloads folder to this newly created folder.
To run the program from Windows File Explorer, I navigate to this folder and double-click on incontrol.exe. To run the program from the Command Prompt, I would CD to C:\Users\%username%\programs and then type “incontrol” followed by Enter. In either case, the actions are the same as before; we’re just operating from our new Programs folder instead of the Downloads folder.
Why a new folder?
There are a couple of reasons I suggest you create a new folder for programs like this that you want to keep.
- The Downloads folder is fragile. Things sometimes disappear from Downloads without warning or by accident.
- You can use this new folder to hold multiple programs. If you have more than one .exe file downloaded, place them all here. You’ll have a central repository that’s easy to remember and find.
As we’ll see next, that folder enables something convenient.
Tell Windows about your folder: the PATH
If you use Start-Run (or +R) to open the Run dialog box, all you need to do is type in the name of your command for Windows to find and run it. For example, entering “notepad” and clicking on OK will cause Windows to locate notepad.exe and run it.
We can add our newly created folder to the list of places Windows will look. That list is called the PATH environment variable.
In Settings, search for PATH. Click on Edit the system environment variables when it appears. In the resulting dialog, click on the Environment Variables button near the bottom.
There are two sections:
- User variables, containing information specific to the currently signed-in user (“leon”, in my case).
- System variables, which are used by Windows and all users.
There is a PATH2 variable in each section. This contains a list of folders Windows searches when looking for a program by name. Folders listed in the System PATH are checked first, followed by folders in the user PATH. As soon as the program being looked for is found, it’s run, and the rest of the folders are ignored. “Notepad.exe”, for example, typically lives in C:\Windows\System32, which is the first folder in the system PATH; thus, Windows doesn’t need to look further.
We want to add our folder — C:\Users\%username%\programs — to our user path.
Double-click on the PATH item in the user section to open an editing interface. Click on New to add a new entry.
Enter the path — C:\Users\%username%\programs — or, to maintain consistency with what’s already there — %USERPROFILE%\programs. %USERPROFILE% is equivalent to C:\Users\%username%.
Click OK to save the change. Close the dialog with another OK.
Now typing “incontrol” in the Run dialog will cause Windows to locate incontrol.exe in the folder we’ve created and run it.
If you’re in Command Prompt, you may need to close and reopen it to refresh its knowledge of the PATH. Once you do so, you can just type “incontrol” followed by Enter.
Using the PATH, Windows will locate incontrol.exe in our custom folder and run the program.
Using a program on multiple machines
Since we have created a folder to hold these portable programs, we can easily have them appear on all the machines we use. All it takes is a file synchronization tool like Dropbox or OneDrive.
I’ll use OneDrive as my example.
First, instead of creating C:\Users\%username%\programs, put it in OneDrive, or C:\Users\%username%\OneDrive\programs. This will upload the contents to OneDrive.com, but more importantly, it will also automatically download the files to all the machines signed into the same OneDrive account.
Second, on each machine, instead of adding C:\Users\%username%\programs to your user PATH, add the OneDrive folder (C:\Users\%username%\OneDrive\programs) to it instead.
As I said, it doesn’t have to be OneDrive. I use Dropbox for this. Any file synchronization program will do. The upshot is that placing your portable .exe file into your programs folder on one machine makes it available on all.
Another option is to place all of these files on a thumb drive you take from machine to machine. This is essentially the origin of the term portable as applied to these programs.
Avoid temptation
There’s one approach I need to mention so you avoid it.
Some people download their .exe files into c:\Windows\System32. That’s where most of Windows itself lives. It’s a fairly convenient folder, and it’s already in the PATH. Drop your .exe file there, and it’ll just work…
…until it doesn’t.
This is Windows territory, and there’s no real guarantee that what you place there will stay there or will always run there. Much better to do things correctly from the start.
Do this
Now you have options. Which one is appropriate for you depends on what you intend to do with the program.
Subscribe to Confident Computing! Less frustration and more confidence, solutions, answers, and tips in your inbox every week.
Podcast audio
Footnotes & References
1: It’s a utility I discuss in How to Block the Windows 11 Upgrade and Stay on Windows 10.
2: It’s actually case-insensitive, but using all uppercase is a useful way to remember that this is an environment variable.
I did something similar to what you did regarding making a “downloads” folder. However, I wanted something a bit quicker to get access to the programs in it that I wanted to navigate to. I made a “New” folder in the Desktop window. I gave it a custom Iconic image to make it more identifiable. Then, when I download any new programs/apps, I open it and then make a “shortcut” of them onto my desktop window. After that, I open the “New” folder and drag and drop the shortcut into it.
After that, when I want to open a program/app, I go to the “New” folder, find the program/app I want to go into, and just double-click on it to launch. Easy-Peezy, I don’t have to go to File Explorer to then search for the program/app I want to launch. No need to go to user>programs> and try to search for the program/app to launch. The programs/apps are easily identifiable by the shortcut icon. This is my way 🙂
I second the notion of having a folder with shortcuts, but you can go a step further if you are still using WIn 10 or earlier. Right-click the task bar, choose Toolbars, and choose “New Toolbar …”. Give the toolbar a name and point it to the shortcut folder you made. You’ll now have a popup toolbar on the task bar and won’t have to open the shortcut folder anymore except to add new items. You can create folders and subfolders in the shortcut folder to get an old style hierarchy of selectable items from the toolbar. Create multiple toolbars if you want, create other shortcuts (like a PDF or web link for a program), or rename the shortcuts to have more meaningful names. Unfortunately Microsoft pulled toolbars from Win 11, but there are some free apps that try to bring them back to some degree.
I usually don’t download .exe files for free programs because there’s no reason to keep them as they are easy to download, and the .exe files become obsolete when updates come out. For paid programs, I have an Installation folder for .exe, .msi, and .iso files. Those are also in my OneDrive folder, because, Why not? I can always move them if I need the space.
What about creating that folder in C:\Program Files or
C:/ProgramFiles(x86)? Windows will tell you you can’t, but I never listen
Now, that’s exactly where I won’t put them, and for the very reason Leo stated earlier — “that’s Windows territory.”
In fact, I’m careful not to even name the new folder “Programs” (there’s where you & I differ, Leo).
I’ll call the new folder “Progs” or even “PortableProgs” — but never “Programs.” The bottom line is, Windows already HAS a folder by that name, and I DON’T care to confuse the two.
Now, on the other hand, when I actually install a program, I’m always careful to move the installation or setup program, along with any receipts, license files or keys, and even it’s program and/or installation shortcut, to that program’s installation folder. Sometimes this takes a bit of doing*, but it ensures that if I move the program to a new machine, I’ll have everything at hand to (hopefully) make sure it’ll work in its new home.
*(For example, putting the install program shorcut there is a minor pain — Windows won’t let you actually create such a shortcut there, offering to put it on the Desktop instead. But I simply minimize the folder, exposing my Desktop, “cut” the new shortcut, restore the installation folder, and “paste.” And even then, I may get a UAC prompt! Like I said — a minor pain.)
That’s technically possible, but it may open you up to potential comflicts. Creating C:\PortableApps or C:\Exefiles.
Windows expects this folder to contain apps installed via proper setup routines. Manually placing executables here can confuse system tools..
For example, portable apps that try to write to their own folder, e.g. data, config files, or logs may fail unless run as admin.
Great material again! Using the same arrangements here. A couple of complications one might want to bring up in the video. Some programs may need .dll or .ini files or the like in the “programs” folder. That is the .exe alone is not quite enough. In that case one can put the needed extra material in a folder of their own, which could be a subfolder of “programs”. Or just dump them all into “programs”. Then, or course there is an entirely different can of worms with fully installable programs. A subject of its own, but maybe just worth mentioning also in this connection. As for putting the programs’ OneDrive folder to the path, I am a bit vary. A question of preference. The logic is sound, but potential frequent net outages could cause delays and hence undue consternation. Besides, it may be slightly difficult for some users to grasp.