There are typically two options for embedded systems. The first is an easy maker-level option, which is probably the easiest way to blink an LED, but the challenges start when the code grows large and debugging becomes necessary. The second option is through using commercial tools, which cost thousands of dollars and require specialized skillsets.
Thankfully, there is now SITCore as a third option, running TinyCLR OS! The intuitive and high level .NET C# is easier to learn, plus code completion available in Microsoft’s Visual Studio makes programming and debugging a breeze. Instead of spending hours looking through documentation, you will spend hours creating and innovating.