.NET MAUI › Controls & Views

How do CollectionView and ListView differ?

Intermediate

Answer

CollectionView is newer, faster, and more flexible: it has no built-in cell types, uses flexible DataTemplates, supports horizontal/grid layouts and multiple selection, and virtualizes more efficiently. ListView carries cell concepts (TextCell, ViewCell), pull-to-refresh, and headers/footers built in. New code should default to CollectionView, adding RefreshView for pull-to-refresh.
<RefreshView IsRefreshing="{Binding IsBusy}" Command="{Binding RefreshCommand}">
    <CollectionView ItemsSource="{Binding Items}" />
</RefreshView>
Real-world example Migrating a feed from ListView to CollectionView wrapped in RefreshView improves scroll performance while keeping pull-to-refresh.

Common follow-ups: How do you add pull-to-refresh to CollectionView? | Does CollectionView support grouping?