Use Flexbox for a single row or column.
So you might have a 10x10 grid and in the cell in row 3 column 5 you might want to have a bunch of images that are all in a row. Use Flexbox to layout those images.
https://stackoverflow.com/questions/55064488/what-are-the-ar...
1. For unknown number of items in one direction. (toolbar of buttons works better in flex)
2. Row-wrapping items. (ie, the unknown number of items need to flow with the screen, grid _stinks_ horrible at this)
Grid:
1. Specific forced number of columns but unknown number of rows (the control is the ultimate, flexbox still does some loosey-goosey stuff where grid stays put). Also, when I know exactly what I want and where it will go and there is no ambiguity about it, grid is perfect. Rows are implicit (ie, any number of rows) This makes clean form building a dream...
2. Specific layout with areas. Think header, columns, footer all part of a unified design. Way, easier in grid than in flexbox.
Grid has grid-gap, which is vital for making some layouts easy. Flex only has grid-gap in Firefox, so you are stuck with flippin margins for item spacing in flexbox still, yuck.
Grid: two dimensions and handling a known amount of reasonably sized elements
You have a lot of flexibility in choosing the width and height of each cell, but they are rigid.
In case of Flexbox, we don't specify any fixed lines to which the elements will size. Instead, we say general rules saying elements can grow to as much size is available, or stay at the beginning of the row etc. The layout is determined to a large extend by the elements we place rather than on a fixed set of gridlines.