Used to do quite a bit of QuickBASIC coding back in the late 90's and very early 2000's. QBasic 1.1 (the free version that comes with MS-DOS) is pretty capable and a lot of fun to use, but moving up to QuickBASIC makes it easier to link in high performance code written in C, assembly, etc. as "quick libraries." That really opens the door to do a lot of the cool stuff you can find on the sites others have linked in this thread. You can actually use assembly in QBasic 1.1 too via CALL ABSOLUTE, but it tends to be a pain in the ass (in my experience). Plus the extra performance you get from being able to run your own compiled .EXE's with QuickBASIC helps too.
There were a quite a lot of game development libraries geared towards QuickBASIC (DirectQB, Future Library, UGL, etc) and the community of developers at the time was awesome. I miss those days. 😀