Он нужен для того чтобы кинуть его поверх текущего ViewController-а. При показе модального контроллера не нужно его пихать в navigation или ещё куда (особенно это удобно когда nivagation контроллера нет)
На примере ipad-а очень хорошо видно (на фоне всё осталось и никуда не исчезло)
https://developer.apple.com/library/ios/featuredar...
Можно провести грубую аналогию с несколькими окнами одной программы у винды. Вы открываете настройки например и у вас открывается второе окошко той же программы, но скорее всего поменьше размером, а первое при этом заблокированно