Photoshop for starters.
The example you showed is pretty simple. One layer is the logo. The layer above is a simple gradient.
Drop in the logo. Create a layer above it. Use the rectangle marquee tool and draw a rectangle. Select the gradient tool. In the top tool bar you should see a selection for different gradients. ake sure the fill is white and you've select from the top tool bar the gradient with 100 to 0 opacity. Click and drag through the box to fill it with the gradient. If you mess up simply ctrl z and draw it again. If the gradient is too dark then change the opacity. You're done.
This can also be done in Illustrator, either with a shape overlayed with a gradient, or opacity masked shapes, which give you a bit more flexibility. Try different apps and see what works. I prefer AI, but that's just me