I would consider myself a proficient developer. I have picked up knowedge of C# through my university degree in (BSc) Computer Networking and Security, and have also continued my understanding of Object Orientated programming through self-taught programming. I consider this a continuous process to ensure my knowledge is up to date!
I also have experience with Windows Presentation Foundation (WPF), although I do prefer the simplicity of WinForms.
My university dissertation is centred around Network Topology Discovery and Dynamic Interface Weight adjustment based upon interface loads. The application is coded in C# using WPF. Initially WinForms was used but I found that the graphical aspects of WinForms was rather limiting and the performance was suboptimal.
The application discovers a network using SNMP (Simple Network Management Protocol) and the user can choose a number of protocols to discover a network using either:
A screenshot of a discovered network topology:
Another screenshot of the application monitoring network statistics: