Choosing Java or Bedrock
Minecraft is really two separate games under one name, built on different code, and they can’t connect to each other directly. Picking the right one up front saves you from migrating a world later.
The Core Difference
| Java Edition | Bedrock Edition | |
|---|---|---|
| Platforms | PC (Windows/Mac/Linux) only | PC, Xbox, PlayStation, Switch, mobile |
| Mods | Yes (Forge/Fabric) | No — Add-ons instead, more limited |
| Plugins | Yes (Paper/Spigot) | No |
| Cross-play | PC-to-PC only | Every Bedrock platform can play together |
| Redstone / technical play | The established platform for it | Works, but Java is where most redstone tutorials and tools assume you are |
| New features | Usually first | Usually follows Java by a version or two |
The Question That Actually Decides It
What devices does your group already play on? If anyone’s on console or mobile, that’s Bedrock — Java doesn’t run there at all. If everyone’s on PC and you want mods, that’s Java — Bedrock’s Add-ons don’t cover the same ground.
If your group is PC-only and doesn’t care about mods, either works — Paper (see Choosing Server Software) on Java is a common default just for the plugin ecosystem, but plenty of people run vanilla-feel Bedrock servers with no complaints.
Want Both?
GeyserMC lets Bedrock players connect to a Java server, translating between the two protocols in real time. It’s the standard way to run one shared server for a mixed group instead of hosting two separate worlds. See the note on it in Bedrock Getting Started.