You are right!!!
0dBFS (zero decibels full-scale) is the highest you can "count to" with a given number of bits.
The "numbers" in a 24-bit file are bigger but everything is scaled to the same loudness when you play (or record).
24-bits can to quieter before it drops to zero (dead digital silence). That means more dynamic range.
The extra dynamic range is on the quiet side rather than the loud side. The dynamic range of cassettes limited by noise. 16-bits has more dynamic range than just about anything analog.
24-bit also has smaller digital "steps" (higher resolution). The DAC smooths everything so there are no "steps" in the analog output anyway but there is something called quantization noise which is lower at higher resolution. You can't normally hear it with 16 or 24-bits but if you make an 8-bit file, you'll hear it like a "fuzz" on top of the audio. (If you want to know what low resolution sounds like, try an 8-bit file.)
Floating point audio has a different 0dB reference (a value of 1.0). 32-bit floating point has a virtually unlimited range somewhere around -700dB to +700dB.
There are a few floating point digital recorders and audio interfaces and they can go over 0dB without
Clipping, but there are still real-world physical voltage limits and I'd guess they go to +12 or +20dB. And they are still noise limited on the quiet side.
Since you don't want the DAC to clip when you play back, the final file shouldn't go over 0dB, even if you have a format that can go over.