Hello kneeoh,
Thanks for reaching out on the Apple Support Communities. From your message it sounds like you're encountering an issue with your iMac not connecting to Wi-Fi when you start it up normally, but the Wi-Fi is working when you select a startup disk.
Let's begin by seeing how the Wi-Fi performs in a new user. Follow these steps to create a new user, sign into that new user with your information, and see how the Wi-Fi performs. This article will show you how: How to test an issue in another user account on your Mac.
If the Wi-Fi works in the new user, try these steps from your user account:
1 - Forget your home Wi-Fi network. To do this go to System Preferences > Network > Wi-Fi > click on Advanced > Preferred Networks > click on the name of your home network > click on the -- to remove it > click on OK.
2 - Restart your MacBook Pro. Go to the Apple menu > Restart.
3 - Select Wi-Fi from the menu bar and connect to your home network. Test to see if there is any change.
4 - If there is no change, try creating a new Wi-Fi network location and test the connection again: How to use network locations on your Mac.
All the best.