There is some detail about this in this Appium Pro post.
webdriverAgent is needed in order to test on iOS yes. It’s how the tests work with XCUITest.
The post I linked above will help you run on Real Devices. If you just want to run on Simulators the setup steps are here.