Is there a way to make a new skin to a C# control?
for example, I want to have a listview with the same functionality of the default one
but with a completely different look.
thanks :)
Depends on your library.
Win Forms: tedious and really hard to do. You will have no hair on your head after you are finished with styling one single control.
Wpf: Wpf is build for exactly that (and of course, many other amazing things). This page might help you alot.
If you want to skin your application entirely, I'd advise you to learn and use WPF. I did it is as well and it is amazing, not just the customizability, but everything in general. It is a great platform, but as it needs DirectX and more resources, it is not as portable.