Well first you need a problem where using a FPGA is a good fit.
FPGAs usually clock much lower than CPUs. If you want to beat a modern multicore CPU running at 5GHz with a 100MHz FPGA, you need to do a lot more per cycle to win. Your optimal problem is either highly parallel or solvable using a deep pipeline that gives you crazy throughput.
Since accessing external RAM is much more complicated on a FPGA and you don't have all the nice prefetching and caching levels of a CPU, you better make do with the limited on-board memory.
Usually this limits you to real-time stream processing like audio, video, packet filtering or I/O muxing.
But if you have an interesting problem in these spaces, FPGAs can be crazy power efficient and fun.
At my university, we used a ZynqBerry (Raspberry Pi format and only around $100) with the Vivado tools, so maybe that would be a good start for you as well.