It's not that difficult - you get the UDK for free. You can make games with the UDK without paying anything. You can release the game without paying anything as long as you don't make any money off of it. If you intend to sell it there are two licenses - one is for 'indie' developers where you pay $100 for the license to the UDK and then you have to pay 1/4 of your earnings after $5000 of profit.
The other option is for professional development companies, because it's too expensive for most people. =/