Building a Portfolio and need some direction

More or less you got two decision points here.

Are “types” of work items CPTs or terms of taxonomy?

While from the start it sounds more like terms (they are all work items, but of different types) the latter requirement of different fields brings them closer to multiple CPTs in my opinion.

I don’t think this is clear cut here, either could work. Personally if editor/fields are different then multiple CPTs make more sense to me.

What case studies even are?

This is trickier. You need to pick individual items, of different types, and likely put them into specific order. Taxonomy is closest WP has for grouping, but it won’t do well for tight control of what is happening inside group. It only defines being in or out.

Likely this calls for: CPT and post relationships. Problem is WP absolutely refuses to do post relationships, so you have to bring in a lib for that. Or just fake relationships convincingly.

So overall the first part is more of a picking direction thing. The second is more involved and custom, than just using native core functionality.