Как правильно сегодня собрать браузерный ES6?
На webpack стоит переходить хотя бы ради адекватной инкрементальной пересборки в watch режиме и горячей перезагрузки работающей одинаково для всех браузеров.
Вместо babel лучше использовать typescript в режиме совместимости с js для старого кода (babel генерит совсем уж шайтан кашу и гораздо медленнее собирает). 
Новый код сразу на typescript писать. (подсказки в ide на выводе типов и @types/* для библиотек здорово ускоряют процесс написания и частично компенсируют отсутствие тестов в проекте, если за них не платят - то есть всегда :( )
Даже если ориентируетесь исключительно на новые браузеры, всегда стоит использовать транспиляторы на этапе сборки (typescript умеет это делать без записи выходных файлов) чисто ради проверки корректности кода и соответствия типов (уже это поможет выкинуть половину тестов из обычного js, ибо не зачем проверять в рантайме то, что уже проверил транспилятор).
Ну и опять же идеология webpack что все есть модуль (не зависимо от типа файла) и может подключать другие модули хоть и кажется по началу диковатой, но на практике оказывается гораздо удобнее в применении. 
Примеры 
- парсинг и преобразование файлов локализации на этапе сборки и распихивание переводов сразу в результирующий бандл.
- усечение файлов иконочных шрифтов, на основе используемых в коде классов.
- CSS Modules
На вебпак переходить не обязательно, трaспиляцей там занимается тот же babel. Но не помешает:)
babel-preset-env умеет использовать browserslist примерно так же, как это делает postcss.