Many 2D engines provide as intuitive API as typical 3D engine does. In fact, 2D engines are not much different than 3D engines, given that 2D is just 3D with ortographic projection. Programming in 2D can be harder, however, if one's graphics API is poor, or if you are trying to create something innovative. But same can be said for 3D. Asset-wise, it's easier to make decent 3D than decent 2D, in my opinion.