as far as I can remember, the toolchain (including rustup, cargo, rustc, etc) is free and dual licensed under Apache and MIT. but there's some controversy recently regarding the Rust Foundation's trade marks and branding policies, you can read the discussion from various sources, such as this
you don't need a C++ compiler to use rust, what you need is a linker (together with platform specific system libraries), on Windows, you need the WindowsKit SDK anyway. in theory you can use different linker that is compatible with the link.exe from msvc toolchain, but I didn't bother. also, you can use toolchain with GNU abi.
define "good" please. there's are plenty of GUI libraries to use, but it might or might not suit your use case, or meat your expectation, depending your requirements and background. some popular GUI libraries I have used include egui, slint, druid, they are all very different and unique in their own way. besides, you can also use the language projection/bindings for other libraries as a last resort, such as GTK, Qt, although they might be more verbose and/or cumbersome to use due to the language restrictions such as ownership and lifetime.