My program need to parse css files into an in-memory object format. Any advice on how this should be done ?
ExCSS (supports CSS2.1 and CSS3) on GitHub: https://github.com/TylerBrinks/ExCSS.
Which is a newer version of the code project article: http://www.codeproject.com/KB/recipes/CSSParser.aspx
There is a CSS grammar file for GoldParser:
GoldParser is easy to include in a C# project, and generates an real LALR parser - not some regex hack.
Have you tried the one featured in JsonFx? It's written in C#, parses CSS3 syntax and is distributed under a MIT style license.
I wrote one, using the grammar specified in the CSS 2.1 spec. I have also released it now: for details, see http://www.modeltext.com/css/
Here you can find another one especially for C# with sample source.