Практически каждый раз, когда я начинаю новый проект, стою перед дилеммой выбора компонентов, пусть то будет компонент для сериализации, IoC контейнер, это не важно, но каждый раз я иду серфить интернет для поиска подходящего варианта. Вы можете сказать, нафиг выбирать, воспользуемся тем что раньше, тоже вариант, но не каждый согласится пользоваться древним компонентом, если практически под рукой лежит лучше, но у Вас нет опыта работы с ним, Вы не знаете как оно, его использовать. Конечно критериев выбора много:
- платный\нет
- хорошая документация\нет
- открытые исходники\нет
- MIT лицензия\другая
- поддерживает нужный фреймворк\нет
- и так далее