I'm new here and I'm also quite new to programming.
I started coding very basic automation scripts with AutoHotkey about five years ago and have made little tools for work. Also, I have been maintaining Quickbooks POS which I have set up for my parents business 6 years ago. Due to lack of support and numerous errors I made little tools that will avoid those bugs and do things better.

I got started thinking that I feel we've been paying too much for a software that's not even specifically meeting our needs and that carries too many features that we don't even use.
So I want to start developing it on my own with C# as this was the language my friend recommended to get started off with if I was going to create a non-web-based program that interacts with users through GUI also due to its relatively low learning curve.

I do have the free version of visual studio but I have no clue as to where I should start.
Although I understand this won't be an easy project, I want to start making a prototype version so that later when we search for a company that will create a software for us, I know exactly what we want.

Could someone please shed some light on this matter?
Oh and I almost forgot, obviously database is a large portion of this project. What do you recommend I use? (mysql, mssql, no-sql like mongodb, etc.)