Setting Up MonoGame

Setting Up MonoGame

We're ready to begin our adventure! Our first step will be to install the necessary software to start making games with MonoGame. Fortunately for us, this software is free! (All of the software I recommend is free, or I'll suggest a free alternative that could work almost as well.)

There will be two pieces to the installation process:

1. Install Visual Studio 2019 Community Edition (or another IDE).
2. Install MonoGame.

Installing Visual Studio

Before you can start programming in MonoGame, you will need to get the right development tools installed.

The minimum you need is the .NET Software Development Kit (SDK). With that, some command line skill, and a text editor, you can do just about everything you might want in .NET.

But that approach is a bit like assembling a car from parts before you drive it. There are some people who like it that way, but for most, what you really want is a program called an Integrated Development Environment, or an IDE. An IDE is a program that assembles all of the tools you need into a single easy-to-use application.

There are many IDEs you can choose from. I recommend either Visual Studio or Visual Studio Code for C# programming (like you will do in MonoGame). Visual Studio is far more feature-rich and easy to use than Visual Studio Code, but with two notable caveats:

1. Visual Studio does not work on a Mac or Linux (it is Windows-only), while Visual Studio code works in all of those places.
2. Visual Studio is only free if you're not a big company. If you have more than 5 Visual Studio users, make more than $1 million a year, or your company has 250+ computers, you'll need to pay for it. (But you also probably have the money for it in these circumstances. It's not terribly expensive, but it's also not free.)

If you don't fit into any of those categories, then you can use Visual Studio 2019 Community Edition. (And don't let that name scare you. You're allowed to use it for commercial purposes, including making games.)

You can pick either of these two and you can pick from one of the other many IDEs, but I recommend starting with Visual Studio 2019 Community Edition. (Or Visual Studio Code if you're on Linux or Mac.)

The bulk of the content in these tutorials focuses on actual MonoGame programming, not how to use the IDE. These tutorials aren't about mastering Visual Studio.

However, I will show how to do certain tasks in Visual Studio, as there's a need. If you're using another IDE, the steps are usually pretty similar, and you can usually figure it out by just trying what makes sense. (If you encounter something truly puzzling, let me know and maybe we can figure it out together.)

For now, I'll assume you're using Visual Studio. (If you're not, I'll also assume you know how to download and install the IDE of your choosing.)

Our first stop will be to install Visual Studio if you don't have it already. (If you've gone through my C# tutorials, you've already got this, and you can skip ahead.) Visual Studio is an Integrated Development Environment (IDE) provided by Microsoft that is used to make all sorts of software.

Choosing an Edition

Visual Studio comes in a number of variations, ranging from free to insanely expensive. The 2019 edition of Visual Studio has three options to choose from: Community, Professional, and Enterprise.

Let's start at the top and work our way down. Enterprise is the high-end version of Visual Studio. It has more features than the other versions but is quite expensive. If you're learning or are a hobbyist, I'd recommend against this. The features this adds are minor for the cost and don't affect the programming itself. (The additional features are mostly for non-programming activities, like architecture and analysis.) If you have a company paying for it, it's worth it, but otherwise, it is not.

Professional and Community both the same feature set. The difference is that Community is free while Professional is not. Whether you are allowed to use Community depends on whether you qualify under the license. You can't use Community if:

  • Your company has a gross income of more than $1000000 a year.
  • Your company has 5+ Visual Studio developers total.
  • Your company has more than 250 computers.

Basically, if you work for a company that can afford the roughly $500 for Visual Studio, they expect you to pay for it. Otherwise, they do not.

If you're reading these tutorials, you almost certainly don't violate any of those and can use Community.

Downloading Visual Studio

All three of these options are available from here:

Chose the option that best suits your needs (probably Community because it is free) and downloads it and starts the installer.

Once the installer comes up, it will ask you for what components and workloads you need to install. You can pick and choose whatever you think you may want someday, but it is also easy to re-run the installer to modify which components you have installed. I'd recommend keeping it simple and just installing the .NET desktop development workload.


Microsoft does eventually seem to require you to register your copy of Visual Studio, which requires giving them an email address. I've never felt like they've spammed me with this. The emails seem to be rather rare, and notify me when a new version of Visual Studio is available, which is nice.

If you don't register, you'll only have about a 30-day free trial (yes, a free trial for free software, which is a little odd) before they block you.

For the free Community Edition, this only requires an email address, not a credit card or anything like that.

Installing MonoGame

With Visual Studio installed, you're ready to install MonoGame. Currently, MonoGame is version 3.8, but I know that is bound to change eventually. Like with Visual Studio, if when you read this, you discover that there is a version newer than 3.8, please let me know so that I can fix it.

The place to download MonoGame is here:

(Follow the link to 3.8 and then click on MonoGame 3.8 for Visual Studio.)

Wrap Up

At this point, you should have everything you need to start making games with MonoGame! In the next tutorial, we'll do just that!

Troubleshooting.png Having problems with this tutorial? Try the troubleshooting page!