Well, although this question is quite broad to answer without knowing your exact needs, I'd still stick to a database as xml is not particularly designed for data storage.
XML was initally designed to structure, deposit, and transport information. I personally use XML wherever I need to store information about settings for my particular project.
Databases on the other hand was designed specifically for the same reasons of your needs. Do not underestimate the power of databases. Especially SQL Server. It is highly capable of handling multiple transactions with huge amount of data. Especially, in your case, you will need data that is 'relational'. How would you go about that by using XML? Not to mention, you will need a great source of CPU power to parse all those records.
If also, speed is important, your best bet will be to use a database. Poke me if you intend to share more information about the structure of your data, so I can prove database is 'the' choice to go!