Как передать данные между приложениями на .NET Core?

Есть 2 приложения, между которыми нужно переслать данные. Тобишь из одного приложения данные по клику передаются в другое приложение. Оба - с авторизацией.

Какой способ лучше всего выбрать для реализации подобного функционала? Если учесть сохранения безопасности данных.

Обычно для этих целей используют так называемые "очереди сообщений". Данный паттерн, очередь сообщений, широко применим и универсален. Например очередь сообщений можно построить на основе таблицы БД. В составе почти любой ОС от Microsoft есть специальный компонент под названием MSMQ, что является реализацией распределенной очереди сообщений с гарантией доставки и т.д.

Но чаще всего для ситуаций вроде вашей используют RabbitMq, хотя это уже не просто очередь, а брокер сообщений. Он популярен и у него относительно низкий порог входа. Существует множество библиотек под наверное любой язык. Так что начать работать с ним не составит большого труда. Легко разворачивается. Не требует сложной настройки, если нет особых требований.

Настроить нужно только кроме роутинг сообщений. Но если использовать какую-нибудь либу, то и роутинг она может настроить автоматически. Для C# например вот хорошая библиотека. Советую посмотреть в эту сторону.