If you must read an INI file from a program that youre not writing, you will have to use the API. If youre writing an application, I wouldnt use an INI - use XML or the registry.
I havent seen any support for reading/writing INIs in the .NET framework whereas the API was made just for that purpose. It takes care of all the file parsing and is the recommended way to read/write an INI file.
-Nerseus
edit:
P.S. It might be worth mentioning that most of the old windows INI files exist for backwards compatability. For instance, ODBCINST.INI, which contains ODBC drivers, is now in the registry. Pretty much everything you would want from win.ini or system.ini is in the registry. If youre looking for something specific from an INI file go ahead and ask - maybe theres a better way to get at it now than through an INI.