How Hard is learning C#

Watch this thread
Zack Green
Badges: 5
? You'll earn badges for being active around the site. Rep gems come when your posts are rated by other community members.
Report Thread starter 3 months ago
Currently I'm trying to learn C# in hopes of making a VR game someday, but watching tutorials I feel SOO unqualified.

I'm going to pick computing for GCSE so hopefully that can (some-what) give me an idea on how to code properly in C# since right now we're doing Python
Last edited by Zack Green; 3 months ago
Icy Wolf
Badges: 10
? You'll earn badges for being active around the site. Rep gems come when your posts are rated by other community members.
Report 3 months ago
Learning to program is hard. Learning to create 3D games is hard. Learning to program 3D games gets very tricky, and VR is on another level.
But don't let that put you off.
I'd suggest taking computer science for gcse, and definitely learning python, but also becoming familiar with the basics of C# in simple aspects such as variable assignment, function definitions, objects and classes, etc. (and also if you're looking to expand your programming, look at other languages as well - if you learn the basics of JavaScript, C++, R, HTML, and even a bit of assembly, it'll make it a lot easier to learn new languages in the future).
For python, just learn it from your teacher. For C#, I'm sure there are plenty of tutorials on how to learn on the internet. For JavaScript and HTML I'd suggest FreeCodeCamp. For R, you'll learn it with A-level maths.
Next step, learn the basics of 2D/3D game creation. Start by making simple programs with a GUI by using, say, pygame with python. Then you can use Unity or Unreal Engine (or skip the basic pygame and go straight to this), and get familiar with the basics of building games in 3D.
If you need to improve your code efficiency and problem solving, I'd suggest trying a few Project Euler problems, as they are very helpful for mathematical problem solving (and are quite fun), as long as you don't look up the answers.
This is where my knowledge on game development ends, but I'm sure if you start with this you'll soon figure out the last steps, I'd assume it'd just be getting familiar with how to use VR and integrate it into your games (owning a headset would help obviously).
It probably sounds like I know a lot about game dev, but I hardly do any (well, ok I never finish the projects that I start).
Oh yeah that's another thing about programming - expect never to finish any of your projects.
Also if you're a complete beginner to programming, expect to get stuck. A lot. Programming (similar to maths) is hard, as I said in the beginning, and you will often get stuck on a problem for hours, and then suddenly it'll work with no explaination at all. But the feeling you get when everything works perfectly after hours of work is just amazing, especially when you look back and see how far you've come.
Good luck, and I hope this advice helps!!
DM me if you want my github link.
Icy Wolf, A level student.
Badges: 17
? You'll earn badges for being active around the site. Rep gems come when your posts are rated by other community members.
Report 3 months ago
You'll want to understand the basic concepts first. This includes your variables, data types, loops, data structures etc... some of which you will have learnt from Python. You should ensure you revisit these topics in C# as there will be syntactic differences and even conceptual differences in some cases which are worth understanding. Though for the most part, they are the same.

I would advise taking this free Harvard Course called 'CS50'. While it doesn't focus on C#, it introduces essential concepts such as pointers and gives a much more thorough understanding of how the likes of data structures work on a much lower level. You don't need to follow along with the activities but just skip from lecture to lecture.

YouTube is by far the best resource for learning C#. A simple search for 'C# for beginners' will yield some good results:

IAmTimCorey is also a very good C# channel, which once you're familiar with the basics will get you started on many of the intermediate to advanced topics and frameworks.

C# is an OOP language, so these tutorials will naturally introduce you to OOP concepts such as Classes, Objects, Inheritance, Polymorphism and Abstraction.

I personally wouldn't start touching game engines until you have a pretty firm understanding of the basics, more advanced concepts, and OOP concepts. As a game engine introduces new dynamics such as sound, graphics, etc... which will be a bit of an overload if you're not familiar with C# in general.

Quick Reply

Attached files
Write a reply...
new posts
to top
My Feed

See more of what you like on
The Student Room

You can personalise what you see on TSR. Tell us a little about yourself to get started.


Have you done work experience at school/college?

Yes (138)
Not yet, but I will soon (54)
No (124)

Watched Threads

View All