At the current moment, right now, if you were to start this today
- You would first need to have the NDA developer stuff signed with Microsoft/Nintendo/Sony, whichever platform
- You would need to apply with the MonoGame Foundation for access to the console stuff
- You would use a tool called BRUTE to transpile your C# MonoGame code into
C C++ code that can run natively on the platform. BRUTE has limitations in that it only supports .NET 4.5 and C# language version up to C# 5. So you would have to rewrite a lot of code that uses newer language features most likely.
- Time it takes for testing, etc.
BRUTE has been the tool in the past for this with MonoGame and XNA likes. It was developed by Tom specifically for porting XNA games to consoles. However, we now live in 2025 where we have NativeAoT compilation. There is work being done to move away from requiring BRUTE and allow for just Native AoT compilation support. FNA is another XNA like, like MonoGame, and they've had some success with Native AoT on consoles. Since both FNA and MonoGame implement the XNA api, you could theoretically use FNA for console release if you wanted to try with Native AoT compiliation. You would still need the NDA developer stuff and access to the console sdks.
Outside of this information, I don't have much more to offer. I don't have access to the console side of things, so I can't speak to the work needed for it and since a lot of it is under NDAs, I'm not sure how detailed anyone can get.
Going to tag @clear marsh in case he has any insight to offer