It shouldn't be hard to get started writing a module for [DotNetNuke], but it doesn't seem like there's a whole lot of help especially when you are wanting to use C#. At Engage, we have created a Visual Studio project template which will get you started developing a C# [DotNetNuke] module, using a Web Application project (rather than the, in my opinion, much more cumbersome Web Site project). It is available for free on our downloads page after registering on the site.
The template will get you started with the basics of a [DotNetNuke] module, providing basic placeholder controls (for view, edit, and settings), base classes to use for your module controls and your settings control, a manifest and NAnt build file to easily package your module, and the basic starting point (and sample code) for your business controller class and data provider. It should really speed up how you start a new module, and free you from always copying your last module and then having to figure out what to delete and what to leave.
To use the template, put the downloaded zip file into the C# web templates folder for Visual Studio. This is typically in My Documents/Visual Studio [2005|2008]/Templates/ProjectTemplates/Visual C#/Web (you might have to create the Web folder yourself). This will make the new project type appear under the Web node for C#, in the My Templates section, when you create a new project. You might also want to open up the zip file and alter the template manifest (C# Compiled Module.vstemplate) to include your company name (replace the values in the CustomParameters section where it says YourCompany).
Please check it out, we hope it helps you out. Happy module building!
[Cross-posted from http://www.engagesoftware.com/Blog/EntryID/162.aspx]