Yea, Windows hosting tends to give problems in the long run. Plus they are more expensive compared to Linux due to their licenses
Using Windows server or Apache depends on what programming language you’re using. You’re right that they are more expensive.
I have been working with Windows Server since 1999, either shared, VPS or dedicated server and didn’t have a lot of issue. The only serious one was a dead hard drive, about 6 years ago, but I guess it didn’t have much to do with the OS.
How do you know when you are ready?
I decided to move from my various shared hostings when my bills started to get too high and felt that I needed more control on the backup processes. It was back in 2013.
Actually I needed 2 servers: one for the websites and one for the databases. They behaved rather well but the company where they were located had some issues: got bought by another company, the support went down and prices sharply. Last year I decided changing provider and it went pretty well considering I had to switch 80+ domains with the help of my new provider’s support. This year I completed the move by moving the database server (30+ databases) this was done pretty fast.