I’m developing a desktop application for managing vehicles, equipment, material, and personnel in a company. I’m at a point where I can insert and query well enough, my database is normalized to well beyond 3NF, and the design of my application is pretty on-point using tabbed navigation.

BUT, I’m finding it difficult displaying the properties of my objects in datagridview, particularly when the properties are themselves properties of other classes, e.g., when I want a column in the employee column to display the results of Employee.Department.DepartmentName, or Employee.JobTitle.JobTitleName.

I thought using Winforms would be a good way to introduce myself to C#, as it would allow me to focus on elements other than design, but now I’m wondering the increased utility of WPF would be worth setting aside my Winform design and rebuilding it in WPF. I haven’t wired up 80% of the controls, so if I make the leap it would be better now than later. Or perhaps it’s the case that this one small thing I’m struggling to achieve is just a

Reddit post away and I should stick with what I’ve got.
Yes. There is absolutely no reason to use Winforms in new projects, especially the ones that have dynamic data.
I would like to disagree with the other posters.

Although not particularly cool or cutting edge, WinForms is extremely powerful and intuitive to use. It will absolutely support everything you need to do so if I were you I’d go ahead and try to solve that specific problem you’re having with a separate post.

I have a lot of experience in both in production apps, and I would say that rewriting in WPF will not make anything easier for you – it’s just different. I really like both technologies.

The only rewrite I would consider in your position is rewriting in web technologies eg. React with a server component to connect to your database. Then it can be moved off-premise. I understand that might well be overkill for you, though!

100%. The learning curve is sharper, but you’ll be learning a modern-enough GUI framework that it will still be useful in the future. Also, as soon as you start doing anything more than a couple of simple pages, you’ll appreciate the workflow and ease of binding to a viewmodel.

Depends what you want it for. WPF promotes good practices through the MVVM pattern but is a bit half baked in its approach.
You might find it distracts too much so who knows. It’s just for teaching yourself so the best thing to do is just to get things working fastest, right?
Dump both of them and turn it into a web site.
Calm down not everything needs to be web based

source