12

I'm in the process of learning C# and have a firm grasp of Java, and almost two decades ago VB6. I'm jumping straight into Windows desktop applications and wonder what alternatives there are to WPF?

Anything recent, that would be more relevant to spend time learning?

I did find a thread here, but wonder if there has been any changes. For instance, Silverlight is all, but seemingly abandoned.

Background: I hold a BS degree in Computer science, but it has been about 5-years since I have been in the technology industry and would like to jump back into a programming career. As a start I would like to build a portfolio.

Community
  • 1
  • 1
standbyfor
  • 173
  • 1
  • 1
  • 5
  • Very vague question... depends very much on what you want to do. For desktop applications WPF is usually the best choice. – Gigi Apr 21 '14 at 17:53
  • 2
    You could write in pure assembly like Steve Gibson of the Gibson Research Corporation https://www.grc.com/. Your executables would be measured in kilobytes instead of megabytes, would not require any framework, would run on any version of Windows, and would be blazingly fast... for someone with a Computer Science degree this should be pretty easy... – Dean Kuga Apr 21 '14 at 18:59

2 Answers2

14

In general, WPF is the best option for Desktop development on Windows. There is nothing else that comes close.

The main "alternative" would be if you wanted to target Windows Store applications, in which case you'd use the Windows Store development model. This is still XAML based (as are all of the new Microsoft UI technologies), so WPF knowledge transfers over fairly well.

Reed Copsey
  • 554,122
  • 78
  • 1,158
  • 1,373
  • haha you beat me to it :P – Federico Berasategui Apr 21 '14 at 17:54
  • 1
    Note that while C#/XAML borrows heavily from WPF, many key pieces of WPF functionality are missing :(. Just something to make sure you keep in mind when doing the transition. – BradleyDotNET Apr 21 '14 at 18:00
  • "There is nothing else that comes close..." Well, there is Sciter ( http://sciter.com ). It has the same feature set but uses HTML/CSS as markup/styling languages: http://sciter.com/wpf-vs-sciter/ – c-smile Nov 19 '15 at 00:05
  • 1
    I am trying to learn WPF recently, I am wondering if the answer is still WPF in 2016/2017? Thanks in advance. – camino Nov 07 '16 at 01:01
  • I am wondering the exact same thing as @camino. I still have in mind what happened to Silverlight... – codea Nov 09 '16 at 22:11
  • 1
    @codea Unlike silverlight, WPF is still getting active developments in each version of the framework... – Reed Copsey Nov 09 '16 at 22:12
  • 2
    I tried but could not find any alternative even close to WPF. Coming from high resolution animation background, I find vector graphics, custom shape windows, transparency, and VB.net or C# in the back end of WPF ever so enticing. As the screens are getting bigger and internet and TV are getting intermingled, WPF will shine more. I hope the Microsoft will some day realize and give WPF its due importance. – Zeni May 17 '17 at 08:54
1

If you are solely looking at c# native UI development, I think your only alternative would be WinForms. Personally I think that WPF is a lot more flexible and easier to work with when you get a grasp on it, and it's very friendly to expansion if you want to write your own extensions. WinForms can arguably be more basic and easy to learn, but you won't achieve the same level of flexibility and extension.

Jason Higgins
  • 1,516
  • 1
  • 17
  • 37