DotNetNukeDocs.com is no longer up and running as an editable Wiki. We encourage you to check out and contribute to the Wiki now hosted on DotNetNuke.com. http://wiki.dotnetnuke.com/
The primary extensibility of DotNetNuke comes from the use of modules. Developing your own modules can be a pretty easy, or pretty painful process depending on how you choose to get started.
DotNetNuke allows you to develop extensions with C# or VB.NET
There are multiple development approaches using Visual Studio 2008, currently we recommend developing using the WAP Model, Web Application Projects, though you can also use the Website Model.
Core UserControls
Nested ModuleActions