Хорошо, я думаю, что термин «офлайн» немного вводит в заблуждение - если вы имеете в виду локальную реляционную базу данных, а не размещенную на каком-либо удаленном сервере.Он всегда доступен для вашего приложения.
У вас здесь очень много решений, я бы сначала посмотрел на SQL-Server Express или SQLite.Оба - зрелые, хорошо зарекомендовавшие себя продукты, используемые в миллионах приложений.SQLite немного легче, но поскольку вы не говорите о проблемах с производительностью, я бы порекомендовал это, поскольку он не требует отдельной установки из вашего приложения.Существует множество различных библиотек-оболочек SQLite для C #.
Существуют другие решения MySQL и Postgresql - но из мира C # я бы, возможно, начал изучать первые две, прежде чем оценивать их.