The first decision when you make a Java server is which server software to run. The names can be confusing, but most of them are related, and the right choice mostly depends on one question: do you want plugins or mods?
The vanilla server
Mojang's official server jar runs the game exactly as designed. It supports data packs but no plugins, and it is slower than the alternatives on busy servers. It is a fine choice for a small group of friends who want a pure vanilla game and technical players who rely on exact vanilla mechanics.
Spigot
Spigot is a modified server that adds a plugin system (built on the older Bukkit API) and some performance options. It started the plugin ecosystem that most public servers use today. You build it yourself with a tool from the Spigot team. Most owners now run Paper instead, which keeps Spigot plugin compatibility.
Paper
Paper is a fork of Spigot. It runs almost all Spigot and Bukkit plugins, is noticeably faster, fixes many bugs and exploits, and has many extra settings for performance and gameplay. It also has its own plugin API that newer plugins use. For most servers with plugins, Paper is the default choice. Note that Paper changes a few vanilla behaviours on purpose, for example some duplication glitches; many of these can be turned back on in its config.
Purpur
Purpur is a fork of Paper. It runs Paper plugins and adds a large number of extra gameplay options, such as rideable mobs and changes to many game rules, all configurable in its own config file. Pick it if you want to tweak gameplay without extra plugins. If you don't need those options, plain Paper is simpler.
Folia
Folia is a Paper project that splits the world into regions and runs them on several CPU threads at once. It can carry very large player counts on strong hardware, but many plugins don't work on it unless they were made for it. It is meant for experienced owners with specific needs, not for a typical server.
Fabric and NeoForge
For mods you need a mod loader server: Fabric or NeoForge (and Forge for older packs). Players must install the same loader and usually the same mods. These servers can't load Paper plugins. Fabric also has server-side mods for performance and admin tools that players don't need to install. Modded servers appear on our modded servers list with the loader they use.
Which one should you choose?
- Public server with plugins: Paper, or Purpur if you want its extra options.
- Small vanilla server for friends: vanilla, or Paper if you want better performance and a few plugins.
- Modpack: Fabric or NeoForge, whichever the pack is made for.
- Network of several servers: Paper behind a Velocity proxy. See how to set up a Velocity network.
Next step: how to install plugins.