Where are you from? Your English seems fine to me.
I'm not a very experienced developer yet and more a beginner, but I began so I should be able to give you some starting advice.
You definitely want to use an engine or framework, otherwise, you need to build everything from scratch. I worked with Monogame and Unity and I can recommend you an engine. You got more control with a low-level framework like Monogame, but all the necessary stuff should be doable in Unity too. In my experience, you end up writing to much code for very basic stuff when doing low-level game development. Just try to make a simple text box where the players can enter a name, and you need hours for a good one. Also, you should be good at the programming language because it's all you got to make the game. I would recommend Unity. It would save you more time in the long run, and if you want to work with others together or get a job in a game dev career, it's useful to have knowledge about it. It may seem bloated and takes more time to get into it, but it will pay off.
And maybe you should try to start with a way less complicated game. The hardest thing is to finish a game, starting to make them is always easier, and 5 years is a very long time. Your first game will always have not the best code, artwork, game design and marketing. You can practice it by making some smaller games first. I scraped over 100 hours of work, I used to make my first game but the game idea wasn't that good and working with Monogame was time-consuming. I found a new better game idea and need to get more into Unity, and I'm sure I can make my game in less than 2 years realistically. I wanted to make something short but hadn't a good game idea, so I'm now doing something bigger, which I probably could finish in a year, but you can underestimate the amount of work pretty easily, so I calculate with less than 2 years since I don't have finished a real game before. In the end, it was a very good choice to work on a different game. But if you work on a bigger game you need to do some good developing practice like DevOps, to ensure that you don't waste too much time on something bad. You need a good 2D platformer to make some money with it because there is a lot of competition in this genre. And Unity which is based on Monogame supports cross-platform development, so you can deliver your game on all operating systems, consoles and even mobile devices.