I've had an interesting time at work recently. Aside from the usual "gotta get this finished by the end of the deadline", I've been working with a couple of developers with very little .NET experience. Now I've spent a lot of time writing about learning ASP.NET in all the versions of the books I've worked on, but I've not really had the opportunity to meet the target audience (or close to it) until these last couple of weeks.
For a developer who uses them every day, tools like the DateTime bits in .NET and the fact that you can _still_ access your text boxes on the server side after a postback aren't really things you think about. It's like making toast - you just do it without worrying about how to make the bread go hot and golden. You don't invent a heating element to make toast, you use existing toasters or grills. Likewise, using a DateTime object in .NET and grabbing the TextBox.Text property - you don't need to parse strings of dates, separating on slashes and hyphens to get to the various bits and pieces to reconstruct something vaguely resembling a date, and you don't need a Request.Form("thing") to read values entered by users, but if you never knew of the existence of a toaster or cooker, a DateTime object or the way that Postbacks work, you won't know you can use them.
Coming back to that point in the explanation process was interesting - I didn't want to come across as patronising, but if you never knew of the existance of something, then I'm not going to come across as patronising... at least, I hope I'm not. I actually enjoyed showing them how cool the myDate.ToString("dd/MM/yy") method is for displaying dates, educating on the differences between Pascal and Camel casing, discussing best practices for refactoring, and so on. But there's still a deadline to consider, and you can't spend all your time educating when you need to get on with meeting deadline commitments. In the end I just had to implement datagrid sorting and paging myself one evening because it would just take too long to tell them how to do it and where to look for more information.
One last thought, though. If you know something exists in .NET but don't know how to use it, there's two things you might want to do before you say "I'm not using it - I don't know how, so I'll do it the hard way" - search MSDN and Google. Or look on the bookshelf.