Второй способ несколько лучше, так как вы справляетесь с тем фактом, что может возникнуть исключение. Если вы поймали в ловушку и, по крайней мере, зарегистрировали исключение , это было бы лучше.
Однако этот код будет блокироваться, пока не вернется GetThing
. Если это быстрая операция, то это может не быть проблемой, но в противном случае лучшим подходом является создание асинхронного метода для получения данных. Это вызывает событие, указывающее на завершение, и вы подписываетесь на это событие, чтобы обновить пользовательский интерфейс (или все, что вам нужно).