Should I lift weights or do cardio first?
Generally speaking if you are trying to build muscle (and I hope you are) then strength train first while your glycogen (the body’s main source of fuel) stores are high. This way you have maximum energy for your workout. If you are working on building endurance, such as training for a race, then do cardio first. You will need the energy to complete your run. Another possibility is to alternate days. Do strength training one day and cardio the next (I prefer HIIT cardio).
Maybe you want to ax cardio-only sessions all together and do workouts that combine both. These workouts are usually combinations of compound lifts, plyometrics, sprints, and body weight exercises with little to no rest in between exercises. Think “boot camp” style workouts. You are building strength while elevating your heart rate. This is my preference. It’s fun, fast, and efficient.
Everyone has an opinion on what is “best”. But if you don’t like that “best” then forget it and do what you like because doing something is better than nothing. If you have a nutso schedule and can only exercise 3 days a week and for whatever reason hate to strength train first then don’t. You may not build the muscle you could otherwise but at least you’ll be doing more than the majority. Fitness is like life, can’t fit it into a box.