If cheap H310 boards were available today the Core i5 8400 could be the better option, but with only the expensive Z370 boards any advantages 8400 has, disappears.
I agree. The 8400 is just sitting in a bad position today. If the motherboards were cheaper, then it would be different. But there just are very few situations where the 8400 wins.
1) If your software needs 1 to 4 threads, the 8350K is faster AND cheaper.
2) If your software needs more than 6 threads, the 8700 is the way to go (or overclock the 8700K) unless you want to really have poor performance.
3) So you are left with software that needs exactly 5 or 6 threads. But, now you run into thermal questions. You are pushing the 8400 to its limits in this situation. The base clock on the 8400 is so low that if there is ever thermal throttling, then the 8350K again is faster as the 8350K doesn't throttle. Even though it has fewer cores, the 8350K will likely be faster than a downthrottled 8400 unless you have perfectly parallel code, which is rare.
The number of situations where you need exactly 5 to 6 threads and can guarantee no thermal throttling is not that great. Pairing this with an expensive motherboard and there just aren't many reasons for the 8400. Either get the 8350K or the i7 line and be done with it.
Once the cheaper motherboards are available, then the i5 line will be the line to get. But by then, the rumored 8550, 8650, 8670, and 8650K might all make us forget about the 8400.
I really want to buy one of the Dell XPS or Alienware computers with the 8400. But, each time I try to pull the trigger, I can't justify it. I'm pretty sure I'll end up with an 8650 in the spring, assuming that chip materializes.