Ни один из ваших трёх.
Правильный ответ - media queries
Нет, грузить все не нужно! Нужно просто взять провести оптимизацию сайта. Уменьшить запросы к серверу, перенести все оформление на css, без картинок. Сделать сжатие данных на стороне. Все же используют media queries, так почему вы думаете что вам это будет плохо?
Так же некоторые элементы можно скрыть, а некоторые можно подгружать после загрузки страницы.
Например: по мере прокрутки страницы, подгружать изображения.
У того же гугла есть сервис
Google Page Speed - который скажет вам, что нужно оптимизировать на вашем сайте после его проверки!