The biggest difference is Godot has no concept of rooms like in GameMaker. Instead, everything is made up of nodes in a tree structure. Nodes typically provide functionality, but can also be dummy nodes just to group things together (think <div> tags in HTML).
For example you might have a dummy node which represents the player. It has some innate properties like a position, but doesn't do much else. So you can attach a sprite node to give it a visual appearance. Maybe add a sound node for handling player sound effects, and so on.
Collections of nodes can be saved as scenes. You'd likely have a player scene, a scene for each enemy, one for the level layout, various menus, and so on. They're inherently reusable assuming you don't build in too many dependencies.
What's neat about this approach is that any scene can be run by itself. If you want to just work on the player, you can load them in by themselves.
There's some other cool features. The editor itself is extensible, so you can write code which affects the editor. For example a cannon could render its trajectory in the editor view for easier fine-tuning. That's called a tool script.
There's probably still a bunch of missing features compared to more mature engines like Unity, but I'm really liking the direction of Godot. It feels more intuitive to me than other game engines, and I really appreciate that it's fully open-source and encourages community contributions.