how does anyone know which to use and which is best to learn first
Flexbox is a layout mode. Bootstrap is a framework. Bootstrap 4 now uses flexbox as part of the framework.
I learned Bootstrap and it’s made a world of difference for me. I’m more of a back-end developer, and not artsy, so I needed an easy way to make my front-end look appealing.
I highly recommend this tutorial:
Grid is simpler, but is not yet supported by all. So I suggest you to learn Flexbox and master it. If you want go in the Front-end way or Full-stack or Web design, remove Bootstrap from your mind. Bootstrap is easy but is very very anti-design.
Can you expand on this?
I think bootstrap is not going to be used as much, especially for small projects, now that css grid is available. I would recommend learning flexbox and css grid first. If you want Bootstrap to take care of all your styling, then learn that as well, but after you learn how flexbox and grid works.
What I used to learn flexbox and grid:
If you don’t know how create layout without Bootstrap you will use it to design your website without creativity. It is a strong tool if you know how layout without it and you use it just to semplify.