idk about legacy asp.net, but modern C# is very nice to work with. Every job I've had since my C# job, I keep thinking to myself how much easier it would be if I could rewrite the company's products in C#
Very much agree with you. C# is a great language and the .net runtime(s) are really productive. I'm speaking specifically about Web Parts which is a pretty old toolset a la legacy WebForms.
Ironically, legacy .NET toolchains like Web Forms and Web Parts can be very productive and very easy to maintain, if designed well. Most of the pain comes from the MS vendor lock-in and lack of continuing support. Microsoft has moved on from these technologies so they are no longer well supported and don't have a very defined upgrade path to more "modern" approaches.