One WP_Query that always shows 1 post from category X and 1 post from “not in category X”?

Queries (both WP_Queries and raw SQL queries) are meant to select objects matching given criteria.

“One post from category and one not from category” is not a description of set of posts – it’s description of two posts coming from different sets.

This means you won’t be able to select these two posts using only one query…

So yes, you’ll have to use two queries for that.