Thank you for sharing all the detailed information.
I completely understand how frustrating this must be, especially after spending so much time reinstalling SDKs, updating workloads, and even trying Copilot suggestions. You’ve already done a thorough job ruling out environment-related issues, so it’s very likely that the problem lies in how your shared/common project was converted during the Xamarin to .NET MAUI migration.
Even when MAUI and .NET 8 are installed correctly, the shared project sometimes keeps parts of the old Xamarin setup, which causes Visual Studio to show the “namespace Microsoft.Maui does not exist” error. This usually happens when the project is still treated as a Xamarin library instead of a MAUI-compatible class library.
- Check the project configuration – Open the shared project’s .csproj file and confirm it’s set up as a MAUI class library. It should target .NET 8 platforms (Android, iOS, or Windows), not Xamarin or .NET Standard.
- Review namespace references – Go through your shared code and make sure the old Xamarin namespaces (like Xamarin.Forms) have been replaced with their MAUI equivalents (Microsoft.Maui).
- Verify target frameworks – Make sure the shared project targets the same .NET 8 frameworks as your Android, iOS, and Windows projects.
- Check for leftover Xamarin packages – Remove any remaining Xamarin.Forms or Xamarin.Essentials references if they’re still present.
- Rebuild after updates – Once these are aligned, perform a full clean and rebuild so Visual Studio can reload the MAUI dependencies correctly.
I’d recommend starting with the project configuration, as it’s the most common area that remains partially migrated after running the Upgrade Assistant.
These steps address the subtle project-level issues that usually remain even after verifying workloads multiple times. Please try reviewing these areas.
Please let us know if you require any further assistance, we’re happy to help.
If you found this information useful, kindly mark this as "Accept Answer".