Правильная локализация сайта
Правильно указывать lang в качестве свойства тега html:
<html lang="ru">


как выглядят ссылки для SE не важно, все равно они проверяют по контексту. Но важно правильно указывать charset и lang, иначе могут сбоить.

для пользователя имхо надо бы смотреть на его Accept-Language и подбирать из имеющихся альтернатив, если это внешняя ссылка и давать возможность менять, запоминая в куках. Урл менять как-то не хорошо, хотя полезно иметь жесткий модификатор в урле типа ?lang=ru, но не использоваться его.
1,2,3 имею право на жизнь но какой их них, Все зависит от контента.
Если он полностью зеркален, то имеет смысл использовать 1 или 2
Если контент разный, то 3.