I make the commute from Sioux City to the Des Moines/Ankeny area about every other month. Hwy 20 to I-35 is the ONLY way I would do it. Avoid I-80 at all costs unless you have door gunners. Far too many idiots per hwy mile.
Hwy 20 is 4 lane all the way across. Once you get east of Sioux City traffic is very mild. As you come east the only slow spots are Lawton (55 MPH through town), Moville (4 way stop) and Correctionville (55/45 through town). Other than that it's pretty much 65 MPH. If you need to stop for a break you have Lawton, Moville, Correctionville, Holstein, Early, Rockwell City exit and the Webster city exit. Food and fuel at all of those. I-35 south stops would be at Jewell, Story City and Ames. Again food and fuel at all of those.
Get off I-35 at exit 96 (Elkhart) and go east about 2 1/2 miles to town.
Be very careful coming through Sioux City on I-29. Lots of construction and speed cameras. Also, be aware that when you get off of HWY 75 (the connection between I-29 and HWY 20) the speed limit drops to 55 MPH fro a mile or so. Woodbury County and ISP have a presence there often.
Have a safe trip.