Правильно: в Москве; в г. Москве, в городе Москве. Последние два варианта следует характеризовать как специфически-канцелярские, то есть употребительные преимущественно в официально-деловой речи. Варианты в г. Москва, в городе Москва не соответствуют литературной норме.
Правило таково: географическое название, употребленное с родовыми наименованиями город, село, деревня, хутор, река, выступающее в функции приложения, согласуется с определяемым словом, то есть склоняется, если топоним русского, славянского происхождения или представляет собой давно заимствованное и освоенное наименование. Правильно: в городе Москве, в г. Санкт-Петербурге, в городе Владивостоке.
Обычай не склонять географические названия укоренился в профессиональной речи военных и топографов и под влиянием этого профессионально-терминологического языка широко распространился в современной речи, однако нормой его считать нельзя.
Подробно о склонении географических названий и об употреблении перед названиями городов сокращения г. и слова город см. в «Письмовнике».
Правильно: к городу Владикавказу.
См. третий из наших «горячих вопросов».
Корректно: умереть с голоду (разг.), умереть от голода.
Название Мцхета склоняется: родился в Мцхете. Поскольку это название давно освоено русским языком, то оно может склоняться и со словом город: родился в городе Мцхете.
Подробный ответ см. в «Письмовнике».