Windows has a built-in embedded non-relational store. It is called ESENT and is used by several Windows applications, including the Active Directory and Windows Desktop Search.
http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx
If you want .NET access you can use the ManagedEsent layer on CodePlex.
http://managedesent.codeplex.com/
That project has a PersistentDictionary class that implements a key-value store that implements the IDictionary interface, but is backed by a database.