Here is some code that works but seems a little too long:
    extract[x_] := 
      Part[x, If[IntegerQ[#], {#}, {Floor[#], Ceiling[#]}]& @ Median[Range[Length @ x]]]

Here is another, shorter, but for a list of even lengyh, it only gives one value, not two. I think two values would be better for even list.

    extract[x_] := Part[x, Quantile[Range[Length@x], 1/2]]

So is there concise, efficient code that will return two elements for a list of even length?