Ultimately, in practical terms, this is an unanswerable question. For many Windows startup programs the answer will be “I don’t know”.
But there are definitely steps you can take to at least understand much of what is happening at startup, and perhaps even make a few decisions based on that.
First, realize that there simply is no single answer. There is no “minimum set” of Windows startup programs that I could list here that would work for everyone. Everyone’s machine is different, everyone has different software installed, and everyone has different ideas of what is and is not important.
So I’ll give you an overview of the steps I take when managing my startup.
The first tool I run when diagnosing or tuning startup is autoruns. That’s a free utility from the SysInternals folks out at Microsoft. Now, I’ll warn that it can be extremely overwhelming at first. For example, here’s an image of what it shows me when I run it on my Windows 8.1 system:
That’s the first of many, many pages listing hundreds individual items of interest. That’s way more than any reasonable person would want to look through, and to be honest, it includes areas that you shouldn’t touch.
Fortunately, autoruns allows us to filter by what we’re really concerned about. Click on the tab labeled Logon, and autoruns lists only those items that apply when you log in to Windows. It’s a much shorter list. (The other tabs look at other aspects of the software that runs in Windows in various ways – everything from services to network and print providers.)
Examining Login Entries
My first step is just a visual review of the 15 items I find on my system.
I can ignore many right off the bat because I know I want them. For example, WinPatrol, BoxCryptor, BitTorrent Sync, and Snagit are all programs I’ve explicitly installed and expect to run when I log in. Programs like Windows Mail, Google Chrome, Quickbooks, LastPass, are all artifacts of programs that I’ve installed or use regularly – for whatever reason they’ve installed an auto-start component. Similarly Adobe ARM, the Intuit item and VBoxTray are even more obscure items that relate to software I know is running.
The two yellow items are in fact errors – auto-start entries that are simply incorrect for some reason. I’ll right click on each and select Delete to remove them completely from Windows startup:
You need anti-malware
To answer at least part of your question: yes, you do want your anti-malware programs to run at startup. They may show in another tab. In my case, Windows Defender shows up in the Windows Services tab, and is typically hidden unless you remove the “Hide Windows entries” filter set by default in the Options, Autoruns Options… menu item:
But it definitely runs when Windows is started, as it should.
Depending on your particular anti-malware program, not starting automatically could leave you unprotected until you remember to run it yourself, manually. Depending on what you do during that unprotected time, you run the risk of infection.
What else do you need?
Determining what you actually need can be difficult. Autoruns does make it easy in one regard, by adding a search option. Right click on an entry you’re uncertain of, and click on Search Online…:
Doing this for “Adobe ARM” got me several sites with more information about exactly what it is and what it does.
And this leads us to the dilemma inherent in trying to manage Windows startup programs ourselves. The utility doesn’t need to run at startup, but it provides potentially useful functionality when it does. Specifically it’s the auto-update utility for Adobe Acrobat, and potentially other Adobe products. By leaving it running updates will at least be offered, and possibly installed, automatically. By disabling it we take on the responsibility of doing so ourselves.
So should you disable it? I don’t know. I wouldn’t expect it to be very big or particularly impactful, and it does provide a valuable service1. On the other hand it’s yet another Windows startup program. In this case I left it alone.
Now, repeat that research and decision making process for each of the items you’re not certain of, and you’ll get a sense for the amount of effort it might take.
And to be clear, if as part of this process you run into something where your research turns up things you don’t understand or aren’t certain about, then the best advice is to leave that entry alone.
Turning off an entry
As you saw above, I actually deleted the two erroneous entries in my startup.
Don’t do that for otherwise valid entries that are simply unwanted.
First, if you discover a Windows startup program that you recognize as having something to do with an installed application, investigate the options in that application. Many will include some kind of an option to “start with Windows” (or other Windows startup terminology).
Not only can you then quickly and easily disable the Windows startup program if you so desire, but there will probably be information in the application or its online help that tells you why you might not want to.
If no such option exists in the application, then it’s back to autoruns we go.
Just uncheck the checkbox in front of the item you want to disable. (You may need to run autoruns “as administrator” to be able to make changes to some entries. That, in and of itself, is a flag that you should also be extra careful with those entries.)
That disables the item immediately.
I would not delete the entry completely in case you need to re-enable it after you understand the side-effects of having disabled it. And as you might infer, you can re-enable the item by returning to autoruns and checking the checkbox.
Some items are persistent
Now, one annoyance that I’ll warn you about up front: some programs are extremely persistent. You may stop a program from starting automatically only to find that the program has reset that later when you run it manually or when you take an upgrade or a patch.
Personally, I find this extremely annoying and borderline arrogant.
However, I have better things to do than to keep monitoring this kind of stuff. Unless the program is truly expendable, I’ll typically leave the autostart setting in place if it’s going to be that annoyingly persistent.
Alternately, if I can live without the offensive program, uninstalling it completely also resolves this issue – permanently.
Is all this worth it?
In my honest opinion: no.
In practice this can be a lot of effort for very little return unless you’re experiencing a problem and are trying to diagnose a solution.
It’s very tempting to want to have a “lean and clean” machine, and I can totally understand that. The problem is that most of these startup items are minor offenders in the big picture. Sure, some might take up visible space in the notification area, but that’s about as bad as it gets. Most use very little memory and almost no CPU. Most are nearly benign.
That’s not to say that many might be totally unnecessary, because in concept many – if not most – are. The services that they perform could be designed completely differently so as not to require software to be resident all the time. The vendors have chosen to write their software this way. It’s annoying, and it’s unnecessary.
But it is what it is.
In general, I don’t think it’s worth the time and effort to try and pare it down beyond the obvious.