Теория:

Однородными называются члены предложения (главные или второстепенные), отвечающие на один и тот же вопрос, относящиеся к одному и тому же члену предложения и выполняющие одинаковую синтаксическую функцию.
Пример:
«И дома, и в поле, и в сарае я думал о ней» (А. Чехов) — однородные обстоятельства.
«Погода была чудная, солнечная, тихая, с бодрящим свежим воздухом» (Л. Толстой) — однородные сказуемые и т. д.
Примечание
Не являются однородными членами:
1) повторяющиеся слова, которые используются для выражения усиления.
Пример:
«И всюду — песок, песок...» (В. Обручев);
между ними ставится  запятая. Повторяющиеся слова могут образовывать сложное слово, между ними обычно ставится  дефис.
Пример:
старый-старый, едва-едва, чего-чего, поискал-поискал и т. п.;
2) сочетание двух глаголов в одинаковой форме (простое осложнённое сказуемое): сказал так сказал; ступай возьми и т. п. Запятая  между ними не ставится.
Пример:
«А лиса ждёт не дождётся, пока птенцы выведутся...» (М. Пришвин). «Учили меня отец мои и мать: любить так любить, гулять так гулять, лечить так лечить, стрелять так стрелять...» (А. Розенбаум);
3) фразеологизмы с повторяющимися союзами.
Пример:
о том о сём, ни то ни сё, ни пуха ни пера, ни рыба ни мясо, и так и этак и т. п. Запятая внутри них не ставится.
Основными средствами выражения однородности являются сочинительные союзы и интонация, поэтому однородные члены предложения могут быть связаны:
1) с помощью сочинительных союзов и, а, но, да и др.
Пример:
«И пращ, и стрела, и лукавый кинжал. Щадят победителя годы...» (А. Пушкин);
2) без  помощи союзов.
Пример:
«Мне хочется безгласной тишины, безмолвия, безветрия, бесстрастья» (К. Бальмонт).
Однородные члены предложения могут быть выражены одинаковыми и разными частями речи.
Пример:
«Татьяна верила преданьям простонародной старины: и снам, и карточным гаданьям, и предсказаниям луны» (А. Пушкин).
Между однородными членами ставится запятая.
Пример:
«Дождь шёл нудный, равномерный, без грома и без молнии, но густой и непрозрачный» (С. Антонов).
Точка с запятой отделяет распространённые однородные члены, особенно если они поясняются обособленными членами или придаточными предложениями.
Пример:
«Но ещё непреодолимее была его тоска по кубанским людям, с которыми он сроднился, которые представлялись ему людьми широкого размаха; по бригадам, дружным, как семьи; по тракторным колоннам, выходящим на весенний предпосевный смотр» (Г. Николаева).
Тире ставится при выражении противопоставления между однородными членами, не связанными союзами.
Пример:
«Не рыбачий парус малый — корабли мне снятся» (Н. Некрасов).
Источники:
Гольцова Н. Г., Шамшин И. В., Мищерина М. А. Русский язык. 10–11 классы. Учебник. — М.: 2011. — с. 248–249.