Flexbox changes all of that. It doesn't fix every CSS issue, but it certainly fixes enough of the issues that writing CSS is now fun again. Rather than writing another flexbox tutorial, this article will focus on common interface patterns using flexbox. For more general information on flexbox, I highly recommend Chris Coyier's article: A Complete Guide to Flexbox.
Left aligned logo with right aligned navigation
This is one of the most common patterns around. Prior to flexbox, the best way to do this would have been to wrap the right hand side in a wrapper and float it. Flexbox makes it all easy by using the flex-grow property on the logo.
Vertically centered text
There have been several methods over the years to vertically center text (see: Centering in the Unknown). These techniques have always felt fairly hacky, and no single technique fit all situations. Vertical centering with flexbox is insanely easy. Just use "align-items: center" on the container to vertically center, and "justify-content: center" to horizontally align.
Floated image without wrapping text
I can remember one of the first web development problems I had to tackle: An image that could have been any width/height to the left of a content block that could have been any width/height, all inside of a container with an unknown width/height. The kicker was that the text couldn't wrap underneath the image. After hacking away at it for days, I finally gave up and used a table (and I wasn't judged too harshly for it, because it was 2004).
Flexbox makes this pretty easy. We just need to make the container display: flex, and then give the image a width using flex-basis. From there, if we give the text flex-grow of 1, it will expand to take up any space in the container that's not being used by the image. Best of all, it won't wrap underneath the image. No tables required!
Flexbox is still a relatively new technology, and underwent a significant rewrite a few years ago. Using autoprefixer will handle the minor differences between the spec rewrite, but IE9 and earlier don't support flexbox at all. Flexbox is safe to use today, however, so long as you follow progressive enhancement principles and ensure your site is still usable on older browsers, even if it doesn't look exactly how you want it to.