Если надо, чтобы работало на ХР+ - лучше всего просто взять максимально возможный стек для этой ОС, более-менее изучить, и разрабатывать проект без оглядки на современный средства. Документация по старым .NET, C#, MSSQL Server есть на MSDN в достаточном количестве.
По поводу БД - любой из перечисленных вариантов, в зависимости от требований к приложению, я лично проблем не вижу, вижу только специфику каждого из подходов(есть MSSQL, SQLite, MySQL, etc., и со всем этим можно работать из .NET).
А самый главный вопрос: зачем? Какая задача и какие требования? От этого уже можно плясать и думать, может быть корректировать требования под себя.