I was an enthusiastic early adopter; I read the specification documents the day they came out and after being one of the first to adopt C++, and writing the very first application in C++ at Microsoft, I was ready to abandon C++ and go full C#.
Then I saw people using C# at Microsoft and changed my mind in a millisecond. Throw, throw, throw, throw, throw. Reading the specs I’d skimmed over that part; I think throw is second only to pair programming as the worst thing that ever happened to software development, but everyone was throwing everywhere.
I started using C# again about 4 years ago. There was not one throw in the entire project, only try and catch, and now there was Entity Framework and LINQ.
OK, the migration functionality in Visual Studio is garbage so I wrote my own migration files but still Code first was a great idea and being able too use SQL-like functionality on container classes was inspired.