to copy a post i posted here: https://stackoverflow.com/questions/3430705/3432079#3432079 there are two things to get a handle upon:
I'm sure others can add to these lists ;)
I would skip through the book found at the following link. http://www.amazon.com/Pro-2010-NET-Platform-Fifth/dp/1430225491#reader_1430225491. I know that it is 1712 pages, but if you skim through parts of the book that you only have a rough understanding of, you will be better prepared than skimming through a book that is lacking in information.
The only book with keeping both aspects on index well defined is Pro C# 2010 and .NET 4.0 from Andrew troelson...Very nice book and i am reading it now.
The other book i would recommend is Microsoft Visual C# 2010 Step by Step. Its a very good book with example practices for every chapter. You might love this one too.
Lately I have been reading Pro C# 2008 and the .NET 3.5 Platform (there's now a VS2010/.NET 4.0 version, too), and it does a great job explaining how the .NET bytecode works on the back-end, and how you can learn about what's really being called by using the reflector, etc. It's dense and long (and sometimes more info than I wanted), but it's good informative reading.
That's not gonna be covered by a single book or tutorial, trust me. You need to decide a UI framework, data access technology, patterns and the overall architecture. And of course you need an in-depth knowledge on .NET framework, & how the CLR works. It's nothing C# specific. Since you have UI customization (Panels) requirements, WPF is definitely a better candidate for UI framework.
That being said -
For C#: Pro C# 2010 and the .NET 4 Platform
.NET & CLR: CLR via C#
UI Framework - WPF: Pro WPF in C# 2010
Use MVVM with WPF. MVVM will keep you on track maintaining the Separation of Concern. You can follow Microsoft's Prism guideline. For large applications with sophisticated UI requirements Prism is a better choice. You might need to use Dependency Injection. MEF is there to go hand-to-hand with MVVM & Prism.
Yes, Entity Framework can handle concurrency issues, but that its available in almost all data access framework. Entity Framework provides lots of other facilities, but when using it you should have clear idea of what you're doing. Programming Entity Framework is definitely gonna help.