> If I create a global data types (e.g. Posts) and I have 10M items of this type, are all my items loaded in the ram ? If yes, what are my best alternatives if I want an easy to manage, binded with c#, readeable, embedded DB?
Use the Composite C1 data provider for SQL Server - all the the things you point out you love about the XML database is the case for the SQL Server based data provider also. We designed the data layer so the two different data stores appear identical, as long as you use our API.
So you can put either all your data in SQL Server, or just that particular data type. With that you can have tons of updates and massive amounts of data and things should function.
You can start out by using the XML based data provider and then migrate to the SQL Server based one later, it you start experiencing performance problems.