Thank you all for the advice with this, especially lightxbulb for all of the resources for learning. I wouldn't necessarily classify myself as a "beginner", but I'm not great. I understand functions, classes, the flow of programs, arrays, looping, inheritance, and some other concepts. It's just "mastering" the language where I'm having trouble. Usually, when I learn a new topic for programming, then I immediately go out and create a new project and then get stuck again somewhere and stop learning again. I've made my own 2D games multiple times, and can say I'm a little better than most beginners, but I'm definitely not a great programmer as of right now I don't feel like.
I think what I'll do is do some more studying with C# for a few months. I'll learn some of the other topics for it, such as debugging, event-driven programming, collections, and lambdas (I think that's what they're called?), and then when I feel like I'm a confident C# programmer, I'll start to transition into C++ and eventually make that my primary programming language. I think it'll be easier for me to transition into C++ rather than trying to master it first, plus I really enjoy C# right now just because of how simple it is and how easily everything fits together.