The main difference is that in Xamarin Forms, you share NOT ONLY the business logic, but also the UI. In Xamarin forms, you’ll use basic components on all platforms (Button, Label, etc). That’s the reason why it’s called Xamarin.Forms, because it’s suitable for basic forms.
But for Xamarin Native (Xamarin.iOS and Xamarin.Android ), you’ll create a UI per platform (One for iOS, one for Android). You can do much more with Xamarin Native, because you’ll use native components.