Visual Studio: What It Is and How to Develop Mobile Applications

Author: IT Sectr Published: 2026-02-12 Reading time: 10 min

Visual Studio is an integrated development environment from Microsoft that supports mobile app development through Xamarin and .NET MAUI. The IDE includes C#/F#/VB.NET editor, debugger, profiler, XAML Designer, Android/iOS emulators, and Azure DevOps integration. Visual Studio on Microsoft.com — portal for Community, Professional and Enterprise editions.

Key Takeaways

  • Visual Studio — Microsoft IDE for cross-platform mobile development via Xamarin and .NET MAUI
  • .NET MAUI — successor to Xamarin.Forms with a single project for Android, iOS, Windows and macOS
  • XAML Hot Reload — real-time UI changes on a running app without recompilation
  • iOS Remote Simulator — run iOS applications from Visual Studio via connection to Mac build host
  • IntelliCode — AI assistant for C# autocompletion based on context and best practices

What is Visual Studio?

Visual Studio is Microsoft's flagship IDE, first released in 1997. For mobile development, Visual Studio provides two main frameworks: Xamarin (legacy, supported until 2028) and .NET MAUI (current, starting with .NET 6 in 2021). The IDE is available in Community (free for small teams), Professional and Enterprise editions.

The current version is Visual Studio 2025 (v18.0) with .NET 10 SDK. The IDE supports all platforms: Android (emulator + physical devices), iOS (via Mac build host), Windows (native debugging), macOS (via Parallels or Mac Agent). According to Stack Overflow 2025, 32% of mobile developers working with the .NET stack use Visual Studio.

Key VS Mobile features: projects in .sln/.csproj format with SDK-style (MSBuild), package management via NuGet, XAML Designer for visual UI editing, IntelliCode (AI code completion based on GPT-4), Live Share for remote pair programming.

.NET MAUI: Architecture and Project

.NET MAUI (Multi-platform App UI) is a Microsoft framework for creating native UIs from a single C# codebase. Unlike Xamarin.Forms, MAUI uses a single project for all platforms rather than separate Android/iOS projects. Resources are organized into Platforms/Android, Platforms/iOS, Platforms/Windows folders.

xml
<!-- MainPage.xaml — .NET MAUI UI —>
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="MyApp.MainPage">
    <VerticalStackLayout Spacing="12" Padding="16">
        <Label Text="Hello, .NET MAUI!"
               FontSize="24"
               HorizontalOptions="Center" />
        <Button Text="Load Data"
                Clicked="OnLoadClicked"
                BackgroundColor="#512BD4" />
        <CollectionView x:Name="ItemsList" />
    </VerticalStackLayout>
</ContentPage>

MVVM and DI in MAUI: the framework includes a built-in DI container (Microsoft.Extensions.DependencyInjection), Shell for navigation (TabBar, Flyout, Routing), and CommunityToolkit.Mvvm for INotifyPropertyChanged generation. BindableLayout supports data binding to non-ItemsView elements via BindableLayout.ItemsSource.

csharp
// MainPage.xaml.cs — code-behind with DI
public partial class MainPage : ContentPage
{
    private readonly IApiService _api;
    
    public MainPage(IApiService api)
    {
        InitializeComponent();
        _api = api;
    }
    
    private async void OnLoadClicked(object sender, EventArgs e)
    {
        var items = await _api.GetItemsAsync();
        ItemsList.ItemsSource = items;
    }
}

Xamarin.Essentials → MAUI Essentials: access to native APIs: geolocation, accelerometer, file system, secure storage (SecureStorage), biometrics, vibration, Make Phone Call. APIs are called from shared C# code — MAUI itself translates them to Android (Java/Kotlin bindings) and iOS (Objective-C/Swift bindings).

Xamarin: Legacy Projects and Forms

Xamarin is the predecessor of .NET MAUI, released in 2011 and acquired by Microsoft in 2016. Xamarin uses separate projects: Xamarin.Android (C# + Android bindings), Xamarin.iOS (C# + iOS bindings) and Xamarin.Forms (shared UI via XAML). Microsoft declared Xamarin SDK deprecated in 2023, but support continues until May 2028.

Migration from Xamarin to MAUI is an automated process via .NET Upgrade Assistant. Key changes: .csproj SDK-style instead of old-style, single project instead of separate ones, Shell instead of NavigationPage, WinUI instead of UWP. Microsoft provides a migration guide for Xamarin.Forms → .NET MAUI with step-by-step instructions and a compatibility analyzer.

Xamarin.Android vs Xamarin.iOS differ in architecture: Xamarin.Android uses JNI Bridge to call Java code, Xamarin.iOS uses Ahead-of-Time (AOT) compilation of C# into native ARM. Xamarin.iOS does not support JIT — all iOS applications undergo AOT compilation due to Apple restrictions.

XAML Designer and Hot Reload

XAML Designer in Visual Studio is a visual editor for XAML interfaces with a Toolbox panel (components), Properties (properties of the selected element) and Document Outline (element tree). The Designer supports Data Binding preview (d:DataContext for design-time data) and different design themes.

XAML Hot Reload — modify XAML code without stopping the application. Hot Reload updates the UI on a running emulator or device within seconds. In Visual Studio 2025, Hot Reload supports all MAUI elements: ContentPage, ContentView, ResourceDictionary, Styles, DataTemplates. For C# code-behind, .NET Hot Reload is available (method changes without restart).

Live Visual Tree — a running UI inspector: shows the element hierarchy, their properties and current state. Combined with Hot Reload, Live Visual Tree allows you to change element properties at runtime and immediately see the result on the device screen.

iOS Build via Mac build host

iOS development in Visual Studio requires a connection to a Mac build host — a macOS computer with Xcode and Apple SDK. Visual Studio connects via SSH to Mac Agent, sends the source code, the Mac compiles the iOS binary and returns the result. Without a Mac build host, even compilation of iOS projects in Visual Studio is impossible.

Setting up Mac build host: install Xcode and Visual Studio for Mac Agent on macOS, enable Remote Login in System Settings, pair in Visual Studio through Tools → iOS → Pair to Mac. For cloud builds, MacStadium or MacinCloud can be used. Microsoft Azure Pipelines also supports macOS hosted agents.

iOS Simulator from Visual Studio runs on Mac and is streamed to Windows via Remote Simulator. Visual Studio 2025 uses Xcode 16 Simulator on Mac to display the iOS emulator directly on the Windows desktop.

Android Tools in Visual Studio

Android SDK Manager in Visual Studio manages the installation of Android SDK, build-tools, platforms (API 34, 35, 36) and emulator system images. Visual Studio automatically downloads the necessary components when you first open an Android project. Alternatively, you can use an installed Android Studio SDK.

Android Emulator is built into Visual Studio: launch the emulator from Debug → Start Without Debugging, select an AVD from the list, debug with breakpoints, profile via Android Profiler. Visual Studio supports Hyper-V (Windows 11) and WSL2 for faster emulation. Android Debug Bridge (ADB) is available through the Developer PowerShell command line.

Google Play Services are added via NuGet (Xamarin.GooglePlayServices.* or MAUI.GooglePlayServices.*). Visual Studio automatically configures Google Services JSON/XML for Firebase and Maps. IntelliCode suggests correct using directives and package versions based on your project's .NET TFM.

Frequently Asked Questions

How does .NET MAUI differ from Xamarin.Forms?

.NET MAUI is the evolution of Xamarin.Forms with a single project, built-in DI, Shell, WinUI support and modern SDK-style .csproj. Xamarin.Forms requires separate projects for each platform and does not natively support Windows 11. MAUI also compiles faster thanks to .NET 8/10 SDK.

Can Kotlin/Swift code be used in Visual Studio?

Yes, through Native References and Binding Projects. For Android — Xamarin/MAUI Binding Library (.jar → .dll). For iOS — .xcframework → Static Library Binding. Kotlin/Swift libraries are wrapped in C# proxy classes. .NET MAUI supports Platform-specific code through the Platforms/Android/*.java or Platforms/iOS/*.swift folder.

How to migrate a Xamarin project to .NET MAUI?

Use the .NET Upgrade Assistant in Visual Studio: Project → Upgrade. The tool converts .csproj, XAML namespaces (Xamarin.Forms → MAUI), replaces deprecated APIs. For separate Xamarin.Android/iOS projects — first merge into Xamarin.Forms, then migrate. Microsoft estimates a typical migration at 2–4 weeks for an average project.

Does Visual Studio 2025 support watchOS and tvOS development?

Yes, .NET MAUI supports watchOS and tvOS through additional Target Framework Monikers (TFM). For watchOS, XAML markup with watchOS-compatible elements (WKInterfaceLabel, etc.) and a mandatory Mac build host with tvOS/watchOS SDK in Xcode are required.

What alternatives to Visual Studio exist for C# mobile development?

Main alternatives: Visual Studio Code with C# Dev Kit (lightweight version, without XAML Designer), JetBrains Rider (cross-platform IDE with MAUI support), Rider + Unity (for games). Rider is popular among .NET developers on macOS, as Visual Studio for Mac was discontinued in 2025.

Summary

  • Visual Studio 2025 — Microsoft IDE with .NET 10, IntelliCode and XAML Hot Reload for mobile development
  • .NET MAUI — single project for Android, iOS, Windows, macOS with Shell navigation and DI
  • Xamarin — legacy framework with separate projects, support until 2028
  • Mac build host — mandatory for iOS build, connects via SSH to macOS with Xcode
  • XAML Hot Reload — modify UI on a running device/emulator without recompilation
  • IntelliCode — AI autocompletion for C# based on project context and best practices
  • Google Play + Firebase Services — integration via NuGet with auto-configuration

We will develop a mobile application turnkey

IT Sectr creates iOS and Android applications for startups and businesses since 2017. We will advise you and propose the best solution.

Discuss the project

Read also