The interview was 5 hours. Includes a half hour presentation with 30 minutes of discussion, and lunch with a team member. I interviewed individually with 3 senior level managers, as well as with 3 junior team members at once. It's a long day, but typical for PhD level researchers. ICF will pay for travel and accommodations for the interview. I did not relocate, but I do know that they also have a relocation program should you choose to move for this job. I was hired almost immediately after interviewing.
The interview was a few weeks after I submitted my application, but only because I was traveling and couldn't interview immediately. Prior to the interview, I had a phone screening with a person from HR.