I just do it in a nonstick pan on the stovetop. I usually buy a boneless rib-eye or similar cut with a good amount of fat, and they need to be at least 1 inch in thickness. For medium-rare, cook a 1-inch thick steak for 2-3 min on each side. Let rest before cutting into it.
I just put some olive oil in the pan to coat, heat it up on high heat, and then put the steaks on. Steaks should be at room temp or close to it (take refrigerated steaks out for about an hour) and I just put S&P on. Then I turn the heat to medium high to cook 2-3 min, then flip, then cook another 2-3 min. You want to start on high heat to sear the meat. It should develop a good brown crust and will splatter and make a mess of the stovetop even with a splatter screen.
They've always come out tender and juicy and are great as is or sliced on a salad. We don't have a grill so I would have no clue how to do it that way