Hello,
Welcome to our Microsoft Q&A platform!
I am a winform developer, But i have to build a android app now. I choose xamarin between C# and Android.
If you are familiar with winform and use MVVM normally, You can learn Xamarin.Forms(support Android, iOS, UWP) quickly.
Xamarin.Forms doc: https://learn.microsoft.com/en-us/xamarin/get-started/what-is-xamarin-forms
Xamarin.Forms's controls are similar with winform's controls. If you want to create some custom-control or achieve Android platform's specific function, you need to learn Xamarin.Android(Just support Android).
Xamarin.Android doc https://learn.microsoft.com/en-us/xamarin/android/
Normally, if you just want to achieve Android application and do not need to achieve UWP and iOS simultaneously, just learn Xamarin.Android directly.
Should I learn wpf before learn xamarin?
No. Just learn Xamarin.Android directly if you do not need to support UWP or iOS.
Maybe learn java is more easy?
You are C# developer, you can learn Java easliy, You can use Android Studio to develop android application.
Best Regards,
Leon Lu
If the response is helpful, please click "Accept Answer" and upvote it.
Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.