Bootstrap to gotowe rozwiązanie, taki framework, łatwy w obsłudze, popularny. Jednak trzeba go dołączać do strony, trochę tam waży i nie wszystkie opcje, które on ma będziesz wykorzystywał na stronie. Poza tym ciężko będzie w nim zrobić jakiś oryginalny projekt (tzn. ma on na sztywno wpisane granice rozdzielczości ekranów, czasami jest potrzeba użycia innych).
Grid i flexbox są to narzędzia do tworzenia layoutów stron, ale w nich samych nie zrobisz responsywności. Tutaj musisz wykorzystać Media Queries. CSS Grid jeszcze nie jest taki popularny (tak mi się wydaje) więc pozostaje flexbox.
Ja polecam Media Queries + Flexbox. Zawsze stworzysz co tylko zechcesz, dopasujesz do konkretnej wielkości ekranu, wygoda, łatwość nauki i użycia.