It sounds like you want to create some custom web parts. I would recommend going through some tutorials on C# first and then .Net stack, etc. As Brenden indicated the majority of existing web controls are compiled and you cannot edit their code unless you have source code which is included in a version of the licensing. You can however use the existing controls in new controls .ascx (web parts) that you develop. This will deal with inheritance, etc. Of course you can create your own custom controls from scratch. Just pay attention to the inheritance and different events that each web control needs to subscribe to.
If you want some frank advice, I would suggest that open up visual studio, find some tutorials on creating .ascx controls and go through them. Then drop them on your own, .aspx pages. Once you got that down, then there is not much difference in using them in Kentico.