bestcourses is supported by learners. When you buy through links on our website, we may earn an affiliate commission. Learn more

MonoGame: Introduction to C# Game Programming

Learn game development with C# by utilizing the popular MonoGame framework!

4.65 / 5.0
2236 students6 hours 35 minutes

Created by Kyle Schaub, offered on Udemy

bestcourses score™

Student feedback


To make sure that we score courses properly, we pay a lot of attention to the reviews students leave on courses and how many students are taking a course in the first place. This course has a total of 2236 students which left 638 reviews at an average rating of 4.65, which is average.

Course length


We analyze course length to see if courses cover all important aspects of a topic, taking into account how long the course is compared to the category average. This course has a length of 6 hours 35 minutes, which is pretty short. This might not be a bad thing, but we've found that longer courses are often more detailed & comprehensive. The average course length for this entire category is 9 hours 9 minutes.

Overall score


This course currently has a bestcourses score of 6.9/10, which makes it an average course. Overall, there are probably better courses available for this topic on our platform.


Over the past several years, game development has grown into something that anyone can do. The barrier to entry is continually getting lower, and with so many tools to make the process easier, there’s nothing stopping you from getting started! In this course, we will learn the basics of creating games using MonoGame, a game framework with a rich history rooted in indie development. Hundreds of successful titles have been published that utilize this software, including Stardew Valley, Celeste, Fez, Axiom Verge, and Bastion, each of which has well above one million sales on Steam. The programming language we will be using is C#, one of the most widely used languages in the industry. The combination of a solid game engine and a well-documented programming language will provide everything you need to create any game you can imagine.

This is a project-based course: we will apply the programming and game development fundamentals that we discuss to create our own MonoGame projects. The lectures assume no prior technical knowledge, and whether or not you have programmed before, there is content in this course that can be utilized by anyone. After the introductory section, the course will be divided into three sections discussing C# programming, and three sections that go through the process of developing with MonoGame. We will alternate between programming sections and game development sections in order to get started making games as quickly as possible.

We will develop three games from scratch using MonoGame within this course, starting with a Shooting Gallery game where you click on targets that appear on the screen. Then we’ll create a Spaceship game where you move around the screen using the arrow keys to avoid incoming asteroids, and then we’ll round off the course by creating a top-down action RPG, where we control a player that can walk around and shoot projectiles at enemies. Each new game that we develop will build on what was learned in the previous one, and in the end, you will have a great understanding of what you will need to develop games of your own, which includes:

  • Creating a playable character

  • Keyboard and mouse input

  • Displaying images to the screen

  • Detecting collisions

  • Shooting projectiles

  • Enemies

  • Player score and health

  • Animations

  • Timers

  • Camera

In order to successfully implement these aspects of our games, we will need a solid understanding of several C# concepts. Throughout all three programming sections, we will cover a wide variety of topics, including:

  • Variables and Data Types

  • Conditional Statements

  • Classes and Inheritance

  • Methods

  • Loops

  • Switch Statements

  • Data Structures

Although these concepts will be explained in the context of C#, they are common throughout most programming languages and can be applied to topics beyond the scope of the course. That being said, if you already have a background in programming, there is a “syntax review” lecture, where we’ll do a quick walkthrough of how to do these simple programming tasks in C# specifically. So, if you already know what these are, you can quickly get up to speed on its use in this context.

With all the skills acquired from this course, you will have everything you need in order to get started with projects of your own using MonoGame. By coding along with the lectures, the information will stick with you as we go through the material, and you will have the projects we complete available on your computer that you can look back on and reference. With a solid understanding of C# and MonoGame, there will be nothing stopping you from developing anything you can think of!

What you will learn

  • Make games using MonoGame
  • Write code using C#
  • Understand common programming fundamentals
  • Design software using Object-Oriented Design
  • Utilize open-source software in your projects
  • Finish 3 complete projects from scratch


  • Understand the basics of using a computer
  • Must be able to download and install software from the internet (like Visual Studio, MonoGame, etc.)
Udemy logo
Available on


With almost 200,000 courses and close to 50 million students, Udemy is one of the most visited online learning platforms. Popular topics include software development, the digital economy, but also more traditional topics like cooking and music.

Frequently asked questions

  • Price: $49.99
  • Platform: Udemy
  • Language: English
  • 6 hours 35 minutes
MonoGame: Introduction to C# Game Programming thumbnail

bestcourses score: 6.9/10

There might be better courses available for this topic.