Что такое кортежи в С# и зачем они нужны?

Рассматривая введённые нововведения в C# в версии 7.0 были введены кортежи, которых до этого я при изучении не встречал, мне стало интересно, что это и зачем оно нужно? Не думаю, что разработчики .Net платформы ввели их просто так

кортежи позволяют хранить несколько разнотипных данных в одном объекте, они напоминают класс с открытыми полями и без каких либо других членов, но их форма создания более удобная, например:
(int, string) tuple = (10, "sss");
их можно использовать в ситуациях, когда метод должен возвращать несколько значений (однотипных или разнотипных), при работе с анонимными методами. Советую почитать руководство от microsoft по кортежам и разобраться в приведённых примерах.

Спасибо