Если приложение можно реализовать в виде мобильного сайта, то это лучше, чем делать отдельное приложение для каждого типа устройств.
На мой взгляд можно сделать так.
На форме — поле ввода для названия станции. При вводе первых одной-двух букв с сервера подгружается список подходящих станций метро. Для радиальных/кольцевых в скобках указывается тип станции. Например «Таганская (кольцевая)»
Список подходящих станций метро показывается во всплывающем окне (popup) в виде списка. Где пользователь уже и выбирает станцию. Даже при вводе всего одной буквы количество подгружаемых станций не превысит пару десятков.
Для сжатия отдаваемых данных и распаковки при их получении с помощью JavaScript
применяйте LZW
Выбирать сперва линию, потом станцию, на мой взгляд, не будет удобным для пользователя.
Ему надо будет вспоминать, ошибаться, чертыхаться, выбирать опять и так далее.
Подбор вариантов по первым одной-двум буквам названия станции будет самым удобным, я считаю.