DataReader is usually the fastest method to connect to a sql database. you can read them in and parse them manually into your own custom object collection.
Entity Framework will give you the best development experience on the application side and the best level of modeling abstraction, but at a performance hit. Entities bind very nicely and easily to WPF UI elements.
A DataSet is easy to set up but will force the relational database abstraction into your application code in a very ugly way. It will force you to reference columns as strings in a non type safe way that will break only at run time, and is generally flimsy and not recommended anymore for any significant projects. (before DataSet fans jump down my throat, this is official guidance from MSFT ecn.channel9.msdn.com/o9/te/NorthAmerica/2010/pptx/DEV324.pptx)
Array of CSVs could be fast but much harder to work with and implement.
I would say if you need top performance go with DataReader, but if you need developer productivity go with Entity Framework.