Когда вообще используется этот List?
Ваш эксперимент далёк от идеала. Сделайте примерно 1000 одинаковых экспериментов и возьмите среднее + если мы измеряете время вставки, то ненадо учитывать время заполнения контейнера. Надо вызвать resize у вектора и листа, заполнить их (не push_back'ом), а потом измерить время вставки, и так примерно 1000 раз, каждый раз с новым вектором и листом.  И время замерять, после того как вы получили итератор на нужное место в листе, а не до. Т.е. только время вставки.
Про оптимизации пока умолчим.
Применяется лист в зависимости от данных и используемых алгоритмов. Где актуальны приемущества листа (читайте документацию, какие), там и применяется. + еще надо уметь пользоваться контейнерами (а то потом начнется про то что, например, вектор работает медленно и памяти много жрет или что в листе долгий доступ по индексу).
PS Время так можно замерять: en.cppreference.com/w/cpp/chrono
У вас получился тест на линейное заполнение контейнера. Одна вставка в середину на результаты не повлияет и разницы между list и vector вы не увидите. Попробуйте вставлять элементы в начало контейнера - картинка будет совсем другой.